Abstract
Usually, one avoids numerical algorithms involving operations with large, fully populated matrices. Instead, one tries to reduce all algorithms to matrix-vector multiplications involving only sparse matrices. The reason is the large number of floating point operations; e.g., \(\mathcal {O}(n^{3})\) for the multiplication of two general n × n matrices. The hierarchical matrix (\(\mathcal {H}\)-matrix) technique provides tools to perform the matrix operations approximately in almost linear work \(\mathcal {O}(n\log ^{\ast }n)\). The approximation errors are nevertheless acceptable, since large-scale matrices are usually obtained from discretisations which anyway contain a discretisation error. Adjusting the approximation error to the discretisation error yields the factor \(\mathcal {O}(\log ^{\ast }n).\) The operations enabled by the \(\mathcal {H}\)-matrix technique are not only the matrix addition and multiplication but also the matrix inversion and the LU or Cholesky decomposition. The positive statements from above do not hold for all matrices, but they are valid for the important class of matrices originating from standard discretisations of elliptic partial differential equations or the related integral equations. An important aspect is the fact that the algorithms can be applied in a black-box fashion. Having all matrix operations available, a much larger class of problems can be treated than by the restriction to matrix-vector multiplications. The LU decomposition can be used to construct fast iterations for solving linear systems. Also eigenvalue problems can be treated. The computation of matrix-valued functions is possible (e.g., the matrix exponential function) as well as the solution of matrix equations (e.g., of the Riccati equation).
Similar content being viewed by others
Notes
The \(\mathcal {H}\)-matrix algorithms will implicitly produce an ordering (cf. (13).
It would be more precise to consider triples (M, A, B) with M = AB T, but this would complicate the later notations.
The support of a function \(f:X\rightarrow Y\) is defined by \(\operatorname {supp}(f):=\overline {\{x:f(x)\neq 0\}}\).
In practice, interpolation is preferred.
We use the subsets \(\tau \subset I\) as identifiers of the vertices in T(I),since in the usual cases different vertices correspond to different subsets. If one allows vertices τ with exactly one son vertex, one may introduce a more involved notations by labels.
For a precise notation, one has to change the identifier of the vertices of the tree to distinguish the father τ from the son τ 1.
For simplicity we assume that the nodal points satisfy ξ i ≠ξ j for i≠j.
For more general trees see [26, Sections 5.5.2–5.5.3].
Even if I = J,the Petrov–Galerkin discretisation may use different ansatz functions ϕ i (i∈I) and test functions ψ j (j∈J) so that X i ≠Y i .
For variants of the admissibility condition see [26, (5.7a–c) and Section 5.2.3].
This statement shows that the partition might be finer than necessary. Therefore it makes sense to coarsen the partition. This technique checks whether a coarser partition with the same accuracy exists without increasing the storage size (cf. [26, Section 6.7.2]).
This includes the zero blocks which are considered as low-rank blocks of rank zero: r(b)=0.
Of course, the arising matrix-matrix multiplications and additions can be parallelised.
Without loss of generality, A can be scaled so that the smallest eigenvalue is ≥1.
References
Baur, U.: Low-rank solution of data-sparse Sylvester equations. Numer. Linear Algebra Appl. 15, 837–851 (2008)
Baur, U., Benner, P.: Factorized solution of Lyapupov equations based on hierarchical matrix arithmetic. Computing 78, 211–234 (2006)
Bebendorf, M.: Hierarchical Matrices. Lecture Notes Computer Science Engineering, vol. 63. Springer, Berlin (2008)
Bebendorf, M., Hackbusch, W.: Existence of \(\mathcal {H}\)-matrix approximants to the inverse FE-matrix of elliptic operators with \({L}^{\infty }\)-coefficients. Numer. Math. 95, 1–28 (2003)
Benner, P., Breiten, T.: Low rank methods for a class of generalized Lyapunov equations and related issues. Numer. Math. 124, 441–470 (2013)
Börm, S.: Efficient Numerical Methods for Non-local Operators. EMS, Zürich (2010). Corrected 2nd printing (2013)
Börm, S., Grasedyck, L.: Hybrid cross approximation of integral operators. Numer. Math. 101, 221–249 (2005)
Börm, S., Reimer, K.: Efficient arithmetic operations for rank-structured matrices based on hierarchical low-rank updates. Comput. Vis. Sci. 16, 247–258 (2013)
Braess, D., Hackbusch, W.: Approximation of 1/x by exponential sums in \([1,\infty )\). IMA J. Numer. Anal. 25, 685–697 (2005)
Braess, D., Hackbusch, W.: On the efficient computation of high-dimensional integrals and the approximation by exponential sums. In: DeVore, R.A., Kunoth, A. (eds.) Multiscale, Nonlinear and Adaptive Approximation, pp 39–74. Springer, Berlin (2009)
Dahmen, W., Prössdorf, S., Schneider, R.: Wavelet approximation methods for pseudodifferential equations II: Matrix compression and fast solution. Adv. Comput. Math. 1, 259–335 (1993)
Faustmann, M., Melenk, J.M., Praetorius, D.: \(\mathcal {H}\)-matrix approximability of the inverses of FEM matrices. Numerical Mathematics (2015). 10.1007/s00211-015-0706-9
George, A.: Nested dissection of a regular finite element mesh. SIAM J. Numer. Anal. 10, 345–363 (1973)
Gerds, P., Grasedyck, L.: Solving an elliptic PDE eigenvalue problem via automated multi-level substructuring and hierarchical matrices. Comput. Vis. Sci. 16, 283–302 (2013)
Golub, G.H., Van Loan, C.F.: Matrix Computations, 3rd. The Johns Hopkins University Press, Baltimore (1996)
Grasedyck, L.: Existence and computation of low Kronecker-rank approximations for large linear systems of tensor product structure. Computing 72, 247–265 (2004)
Grasedyck, L.: Existence of a low rank or \(\mathcal {H}\)-matrix approximant to the solution of a Sylvester equation. Numer. Linear Algebra Appl. 11, 371–389 (2004)
Grasedyck, L., Hackbusch, W.: Construction and arithmetics of \(\mathcal {H}\)-matrices. Computing 70, 295–334 (2003)
Grasedyck, L., Hackbusch, W., Kriemann, R.: Performance of \(\mathcal {H}\)-LU preconditioning for sparse matrices. Comput. Methods Appl. Math. 8, 336–349 (2008)
Grasedyck, L., Kriemann, R., Le Borne, S.: Parallel black box \(\mathcal {H}\)-LU preconditioning for elliptic boundary value problems. Comput. Vis. Sci. 11, 273–291 (2008)
Grasedyck, L., Kriemann, R., Le Borne, S.: Domain decomposition based \(\mathcal {H}\)-LU preconditioning. Numer. Math. 112, 565–600 (2009)
Greengard, L., Rokhlin, V.: A new version of the fast multipole method for the Laplace equation in three dimensions. Acta Numer. 6, 229–269 (1997)
Hackbusch, W.: Direct domain decomposition using the hierarchical matrix technique. In: Herrera, I., et al. (eds.) Domain Decomposition Methods in Science and Engineering, pp 39–50. National Autonomous University of Mexico, Mexico City (2003)
Hackbusch, W.: Tensor Spaces and Numerical Tensor Calculus, SSCM, vol. 42. Springer, Berlin (2012)
Hackbusch, W.: Numerical tensor calculus. Acta Numer. 23, 651–742 (2014)
Hackbusch, W.: Hierarchical Matrices: Algorithms and Analysis, SSCM, vol. 49. Springer, Berlin (2015)
Hackbusch, W.: New estimates for the recursive low-rank truncation of block-structured matrices. Numer. Math. (2015). 10.1007/s00211-015-0716-7
Hackbusch, W.: Solution of linear systems in high spatial dimensions. Comput. Vis. Sci. (2015). To appear
Hackbusch, W., Khoromskij, B., Kriemann, R.: Direct Schur complement method by domain decomposition based on \(\mathcal {H}\)-matrix approximation. Comput. Vis. Sci. 8, 179–188 (2005)
Hackbusch, W., Khoromskij, B., Sauter, S.A.: On \(\mathcal {H}^{2}\)-matrices. In: Bungartz, H.J., Hoppe, R.H.W., Zenger, C. (eds.) Lectures on Applied Mathematics, pp 9–29. Springer, Berlin (2000)
Hackbusch, W., Nowak, Z.P.: On the fast matrix multiplication in the boundary element method by panel clustering. Numer. Math. 54, 463–491 (1989)
Higham, N.J.: Functions of Matrices, Theory and Computation. SIAM, Philadelphia (2008)
Kriemann, R. HLIBpro. http://www.hlibpro.com
Kriemann, R.: Parallel \(\mathcal {H}\)-matrix arithmetics on shared memory systems. Computing 74, 273–297 (2005)
Kriemann, R.: \(\mathcal {H}\)-LU factorization on many-core systems. Comput. Vis. Sci. 16, 105–117 (2013)
Kriemann, R., Le Borne, S.: \(\mathcal {H}\)-FAINV: Hierarchically factored approximate inverse preconditioners. Comput. Vis. Sci. (2015). To appear
Le Borne, S., Grasedyck, L., Kriemann, R.: Domain decomposition based \(\mathcal {H}\)-LU preconditioners. In: Widlund, O.B., Keyes, D.E. (eds.) Domain Decomposition Methods in Science and Engineering XVI, Lecture Notes Computer Science Engineering, vol. 55, pp 661–668. Springer, Berlin (2007)
Lize, B.: Résolution directe rapide pour les éléments finis de frontière en électromagnétisme et acoustique: h-matrices. Parallélisme et applications industrielles, p 13. Doctoral thesis. Université Paris (2014)
Penzl, T.: Low rank solution of data-sparse Sylvester equations. Syst. Control Lett. 40, 139–144 (2000)
Sauter, S.A., Schwab, C.: Boundary Element Methods, SSCM, vol. 39. Springer, Berlin (2011)
Skeel, R.D.: Iterative refinement implies numerical stability for Gaussian elimination. Math. Comput. 35, 817–832 (1980)
Stüben, K.: A review of algebraic multigrid. J. Comput. Appl. Math. 128, 281–309 (2001)
Acknowledgments
I thank the anonymous referees for their valuable comments.
Author information
Authors and Affiliations
Corresponding author
Additional information
Dedicated to Eberhard Zeidler’s 75th birthday.
The asterix in \(\protect \qopname \relax o{log}^{\ast }\) replaces some exponent.
Rights and permissions
About this article
Cite this article
Hackbusch, W. Survey on the Technique of Hierarchical Matrices. Vietnam J. Math. 44, 71–101 (2016). https://doi.org/10.1007/s10013-015-0168-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10013-015-0168-5
Keywords
- Hierarchical matrices
- \(\mathcal {H}^{2}\)-matrices
- Efficient matrix operations
- \(\mathcal {H}\)-LU decomposition
- Integral equations
- Solution of large systems
- Matrix functions
- Matrix equations