What is HLib?
HLib is a program library for hierarchical matrices and
H2-matrices. It provides
- routines for the construction of hierarchical matrix structures
(i.e., of cluster trees, block cluster trees, low-rank matrices
and block matrices),
- discretization functions that fill these structures by approximations
of FEM or BEM operators,
- arithmetic algorithms that perform approximative matrix operations
like addition, multiplication, factorizations and inversion,
- conversion routines that turn sparse matrices and dense matrices into
H-matrices and H-matrices or
H2-matrices into H2-matrices and
- service functions that display matrix structures, perform numerical
quadrature or handle files.
The library is written in the C programming language and requires
LAPACK to perform
lower-level algebraic operations (like performing dense matrix-matrix
multiplications or solving eigenvalue problems).
On Unix-type systems, we use Autoconf, Automake and Libtool in order to
provide the user with a fully automatic build process.
If GTK+, OpenGL and GTKGLArea are installed, a visualization program
for surface meshes and cluster trees is provided that can be quite
useful for debugging BEM applications. We are currently working on a
comprehensive GUI that will offer the more interesting functions of
Since HLib was developed (at least partially) at the
Max-Planck-Institut Leipzig, we cannot use an open source license and
turn it into free software. But we can give it away for free to scientist
interested in doing research if they sign an appropriate