|
|
| Line 1: |
Line 1: |
| In [[numerical mathematics]], '''hierarchical matrices (H-matrices)'''
| | I am Jerome from Poys Street. I love to play Euphonium. Other hobbies are Basket Weaving.<br>xunjie いつも新鮮で明るいスタイルヤンミも非常に魅力的なショー彼女の知的な側面を与えます。 |
| <ref name="HA99">W. Hackbusch,
| | 公開される旧ビキニのセクシーな写真 |
| ''A sparse matrix arithmetic based on H-matrices. Part I: Introduction to H-matrices'',
| | プライベート╰☆フルフル日の場合:ブランド名の2013 -8-25 16時15分04秒群衆の追求、 [http://alpha-printing.com/images/store/mcm.php MCM ؔ�� ����] まだスタイリッシュキュートベビーミロパターン5つの異なる形状を加えながら。 |
| Computing (1999), 62:89–108</ref>
| | この作成を歌ってダーリンヤンYuying呉チョン「茶山ラブソング」は、 |
| <ref name="MB08">M. Bebendorf,
| | 今年大幅に真珠の生産を下落している。 [http://www.equityfair.ch/mod_news/jp/mall/shoes/cl/ ���ꥹ�����֥��� ѥ ��ǥ��`��] 芸術のスカートの背面に印刷されたブランドロゴがゲームをプレイするスローガンがあるでしょうしている、 |
| ''Hierarchical matrices: A means to efficiently solve elliptic boundary value problems'',
| | あなたが予想外の素晴らしい音を聞くことができます。 |
| Springer (2008)</ref>
| | プラスこのシャツホワイトカラー、[http://www.equityfair.ch/gzd/jr/mall/shoe/newbalance/ �˥�`�Х�� ���˩`���`] ほとんど星がたくさんストリート波束を人材派遣しているとなっています!エアリーシャン忠(アレクサチャン)のようなニコール·リッチー(ニコール·リッチー)最愛のバレンシアガ(バレンシアガ)オートバイバッグ、 |
| <ref name="HA09">W. Hackbusch,
| | 機能性と世界的に知られてモダンなデザインのおかげで、 |
| ''Hierarchische Matrizen. Algorithmen und Analysis'',
| | 大手調整メカニズム」と財務部門が主導する政府の指導者、 |
| Springer (2009)</ref>
| | スタイリッシュな雰囲気と温かい会場を見た。 [http://citruscontrols.com/Consulting/shop/celine.html<br><br>�`�� ���n] |
| are used as data-sparse approximations of non-sparse matrices.
| |
| While a [[sparse matrix]] of dimension <math>n</math> can be represented efficiently in <math>O(n)</math> units of storage
| |
| by storing only its non-zero entries, a non-sparse matrix would require <math>O(n^2)</math> units of storage, and using this type
| |
| of matrices for large problems would therefore be prohibitively expensive in terms of storage and computing time.
| |
| Hierarchical matrices provide an approximation requiring only <math>O(n k\,\log(n))</math> units of storage, where <math>k</math> is a
| |
| parameter controlling the accuracy of the approximation.
| |
| In typical applications, e.g., when discretizing integral equations
| |
| <ref name="HAKH00">W. Hackbusch and B. N. Khoromskij,
| |
| ''A sparse H-Matrix Arithmetic. Part II: Application to Multi-Dimensional Problems'',
| |
| Computing (2000), 64:21–47</ref>
| |
| <ref name="MB00">M. Bebendorf,
| |
| ''Approximation of boundary element matrices'',
| |
| Num. Math. (2000), 86:565--589</ref>
| |
| <ref name="BERJ03">M. Bebendorf and S. Rjasanow,
| |
| ''Adaptive low-rank approximation of collocation matrices'',
| |
| Computing (2003), 70:1–24</ref>
| |
| <ref name="BOGR05">S. Börm and L. Grasedyck,
| |
| ''Hybrid cross approximation of integral operators'',
| |
| Num. Math. (2005), 101:221–249</ref>
| |
| or solving elliptic partial differential equations
| |
| <ref name="BEHA03">M. Bebendorf and W. Hackbusch,
| |
| ''Existence of H-matrix approximants to the inverse FE-matrix of elliptic operators with <math>L^\infty</math>-coefficients'',
| |
| Num. Math. (2003), 95:1–28</ref>
| |
| ,<ref name="BO10">S. Börm,
| |
| ''Approximation of solution operators of elliptic partial differential equations by H- and H<sup>2</sup>-matrices'',
| |
| Num. Math. (2010), 115:165–193</ref>
| |
| a rank proportional to <math>\log(1/\epsilon)^\gamma</math> with a small constant <math>\gamma</math> is sufficient to ensure an
| |
| accuracy of <math>\epsilon</math>.
| |
| Compared to many other data-sparse representations of non-sparse matrices, hierarchical matrices offer a major advantage:
| |
| the results of matrix arithmetic operations like matrix multiplication, factorization or inversion can be approximated
| |
| in <math>O(n k^\alpha\,\log(n)^\beta)</math> operations, where <math>\alpha,\beta\in\{1,2,3\}.</math><ref name="HAGR03">L. Grasedyck and W. Hackbusch,
| |
| ''Construction and Arithmetics of H-Matrices'',
| |
| Computing (2003), 70:295–334</ref>
| |
|
| |
|
| == Basic idea ==
| | Stop by my web page ... [http://aeii.net/Benchmark2_files/furla.html フルラ 財布 アウトレット] |
| Hierarchical matrices rely on local low-rank approximations:
| |
| let <math>I,J</math> be index sets, and let <math>G\in{\mathbb R}^{I\times J}</math> denote the matrix we have to approximate.
| |
| In many applications (see above), we can find subsets <math>t\subseteq I,s\subseteq J</math> such that <math>G|_{t\times s}</math>
| |
| can be approximated by a rank-<math>k</math> matrix.
| |
| This approximation can be represented in factorized form <math>G|_{t\times s}\approx A B^*</math> with factors
| |
| <math>A\in{\mathbb R}^{t\times k},B\in{\mathbb R}^{s\times k}</math>.
| |
| While the standard representation of the matrix <math>G|_{t\times s}</math> requires <math>O((\#t)(\#s))</math> units of storage,
| |
| the factorized representation requires only <math>O(k(\#t+\#s))</math> units.
| |
| If <math>k</math> is not too large, the storage requirements are reduced significantly.
| |
| | |
| In order to approximate the entire matrix <math>G</math>, it is split into a family of submatrices.
| |
| Large submatrices are stored in factorized representation, while small submatrices are stored in standard representation
| |
| in order to improve the efficiency.
| |
| | |
| Low-rank matrices are closely related to degenerate expansions used in [[panel clustering]] and the [[fast multipole method]]
| |
| to approximate integral operators.
| |
| In this sense, hierarchical matrices can be considered the algebraic counterparts of these techniques.
| |
| | |
| == Application to integral operators ==
| |
| Hierarchical matrices are successfully used to treat integral equations, e.g., the single and double layer potential operators
| |
| appearing in the [[boundary element method]].
| |
| A typical operator has the form
| |
| | |
| : <math>{\mathcal G}[u](x) = \int_\Omega \kappa(x,y) u(y) \,dy.</math>
| |
| | |
| The [[Galerkin method]] leads to matrix entries of the form
| |
| | |
| : <math>g_{ij} = \int_\Omega \int_\Omega \kappa(x,y) \varphi_i(x) \psi_j(y) \,dy\,dx,</math>
| |
| | |
| where <math>(\varphi_i)_{i\in I}</math> and <math>(\psi_j)_{j\in J}</math> are families of finite element basis functions.
| |
| If the kernel function <math>\kappa</math> is sufficiently smooth, we can approximate it by [[polynomial interpolation]] to obtain
| |
| | |
| : <math>\tilde\kappa(x,y) = \sum_{\nu=1}^k \kappa(x,\xi_\nu) \ell_\nu(y),</math>
| |
| | |
| where <math>(\xi_\nu)_{\nu=1}^k</math> is the family of interpolation points and <math>(\ell_\nu)_{\nu=1}^k</math>
| |
| is the corresponding family of [[Lagrange polynomial]]s.
| |
| Replacing <math>\kappa</math> by <math>\tilde\kappa</math> yields an approximation
| |
| | |
| : <math>\tilde g_{ij} = \int_\Omega \int_\Omega \tilde\kappa(x,y) \varphi_i(x) \psi_j(y) \,dy\,dx
| |
| = \sum_{\nu=1}^k \int_\Omega \kappa(x,\xi_\nu) \varphi_i(x) \,dx
| |
| \int_\Omega \ell_\nu(y) \psi_j(y) \,dy
| |
| = \sum_{\nu=1}^k a_{i\nu} b_{j\nu}</math>
| |
| | |
| with the coefficients
| |
| | |
| : <math> a_{i\nu} = \int_\Omega \kappa(x,\xi_\nu) \varphi_i(x) \,dx, </math>
| |
| | |
| : <math> b_{j\nu} = \int_\Omega \ell_\nu(y) \psi_j(y) \,dy. </math>
| |
| | |
| If we choose <math>t\subseteq I,s\subseteq J</math> and use the same interpolation points for all <math>i\in t,j\in s</math>, we obtain
| |
| <math>G|_{t\times s} \approx A B^*</math>.
| |
| | |
| Obviously, any other approximation separating the variables <math>x</math> and <math>y</math>, e.g., the multipole expansion,
| |
| would also allow us to split the double integral into two single integrals and thus arrive at a similar factorized low-rank matrix.
| |
| | |
| Of particular interest are cross approximation techniques
| |
| <ref name="MB00"/>
| |
| <ref name="BERJ03"/>
| |
| <ref name="TY00">E. Tyrtyshnikov,
| |
| ''Incomplete cross approximation in the mosaic-skeleton method'',
| |
| Computing (2000), 64:367–380</ref>
| |
| that use only the entries of the original matrix <math>G</math> to construct a [[low rank approximation|low-rank approximation]].
| |
| | |
| == Application to elliptic partial differential equations ==
| |
| Since the solution operator of an elliptic partial differential equation can be expressed as an integral operator involving
| |
| [[Green's function]], it is not surprising that the inverse of the stiffness matrix arising from the [[finite element method]]
| |
| can be approximated by a hierarchical matrix.
| |
| | |
| Green's function depends on the shape of the computational domain, therefore it is usually not known.
| |
| Nevertheless, approximate arithmetic operations can be employed to compute an approximate inverse without knowing the
| |
| function explicitly.
| |
| | |
| Surprisingly, it is possible to prove<ref name="BEHA03"/><ref name="BO10"/> that the inverse can be approximated even if
| |
| the differential operator involves non-smooth coefficients and Green's function is therefore not smooth.
| |
| | |
| == Arithmetic operations ==
| |
| The most important innovation of the hierarchical matrix method is the development of efficient algorithms for performing
| |
| (approximate) matrix arithmetic operations on non-sparse matrices, e.g., to compute approximate inverses, [[LU decomposition]]s
| |
| and solutions to matrix equations.
| |
| | |
| The central algorithm is the efficient matrix-matrix multiplication, i.e., the computation of <math>Z = Z + \alpha X Y</math>
| |
| for hierarchical matrices <math>X,Y,Z</math> and a scalar factor <math>\alpha</math>.
| |
| The algorithm requires the submatrices of the hierarchical matrices to be organized in a block tree structure and takes
| |
| advantage of the properties of factorized low-rank matrices to compute the updated <math>Z</math> in
| |
| <math>O(n k^2\,\log(n)^2)</math> operations.
| |
| | |
| Taking advantage of the block structure, the inverse can be computed by using recursion to compute inverses and
| |
| [[Schur complement]]s of diagonal blocks and combining both using the matrix-matrix multiplication.
| |
| In a similar way, the [[LU decomposition]]
| |
| <ref name="BE07">M. Bebendorf,
| |
| ''Why finite element discretizations can be factored by triangular hierarchical matrices'',
| |
| SIAM J. Num. Anal. (2007), 45:1472–1494</ref>
| |
| <ref name="GRKRBO09">L. Grasedyck, R. Kriemann and S. Le Borne,
| |
| ''Domain decomposition based H-LU preconditioning'',
| |
| Num. Math. (2009), 112:565–600</ref>
| |
| can be constructed using only recursion and multiplication.
| |
| Both operations also require <math>O(n k^2\,\log(n)^2)</math> operations.
| |
| | |
| == H<sup>2</sup>-matrices ==
| |
| In order to treat very large problems, the structure of hierarchical matrices can be improved:
| |
| H<sup>2</sup>-matrices
| |
| <ref name="HAKHSA02">W. Hackbusch, B. N. Khoromskij and S. A. Sauter,
| |
| ''On H<sup>2</sup>-matrices'',
| |
| Lectures on Applied Mathematics (2002), 9–29</ref>
| |
| <ref name="BO10b">S. Börm,
| |
| ''Efficient Numerical Methods for Non-local Operators: H<sup>2</sup>-Matrix Compression, Algorithms and Analysis'',
| |
| EMS Tracts in Mathematics 14 (2010)</ref>
| |
| replace the general low-rank structure of the blocks by a hierarchical representation closely related to the
| |
| [[fast multipole method]] in order to reduce the storage complexity to <math>O(n k)</math>.
| |
| | |
| In the context of boundary integral operators, replacing the fixed rank <math>k</math> by block-dependent ranks
| |
| leads to approximations that preserve the rate of convergence of the underlying boundary element method
| |
| at a complexity of <math>O(n).</math><ref name="SA00">S. A. Sauter,
| |
| ''Variable order panel clustering'',
| |
| Computing (2000), 64:223–261</ref><ref name="BOSA05">S. Börm and S. A. Sauter,
| |
| ''BEM with linear complexity for the classical boundary integral operators'',
| |
| Math. Comp. (2005), 74:1139–1177</ref>
| |
| | |
| == Literature ==
| |
| <references/>
| |
| | |
| == Software ==
| |
| | |
| [[Category:Matrices]]
| |
| [http://www.hlib.org HLib] is a C software library implementing the most important algorithms for hierarchical and <math>{\mathcal H}^2</math>-matrices. | |
| | |
| [http://bebendorf.ins.uni-bonn.de/AHMED.html AHMED] is a C++ software library that can be downloaded for educational purposes.
| |
| | |
| [http://www.hlibpro.com HLIBpro] is an implementation of the core hierarchical matrix algorithms for commercial applications.
| |