In this article, we present a new Nested Cross Approximation (NNCA) for constructing H2 matrices. It differs from the existing NCAs~\cite{bebendorf2012constructing, zhao2019fast} in the technique of choosing pivots, a key part of the approximation. Our technique of choosing pivots is purely algebraic and involves only a single tree traversal. We demonstrate its applicability by developing a fast H2 matrix-vector product, that uses NNCA for the appropriate low-rank approximations. We illustrate the timing profiles and the accuracy of NNCA based H2 matrix-vector product. We also provide a comparison of NNCA based H2 matrix-vector product with the existing NCA based H2 matrix-vector products. A key observation is that NNCA performs better than the existing NCAs. In addition, using the NNCA based H2 matrix-vector product, we accelerate i) solving an integral equation in 3D and ii) Support Vector Machine (SVM). In the spirit of reproducible computational science, the implementation of the algorithm developed in this article is made available at \url{https://github.com/SAFRAN-LAB/NNCA}.
翻译:本文提出了一种构建H²矩阵的新嵌套交叉逼近(NNCA)方法。该方法与现有NCA方法~\cite{bebendorf2012constructing, zhao2019fast}的主要区别在于枢轴点选取技术——这是逼近算法的关键部分。我们提出的枢轴点选取技术完全基于代数方法,仅需单次树遍历即可完成。通过开发基于NNCA的快速H²矩阵向量乘法,我们验证了该方法的适用性,其中NNCA用于相关低秩逼近。我们展示了基于NNCA的H²矩阵向量乘法的时间特性与精度,并将其与现有基于NCA的H²矩阵向量乘法进行了对比。关键发现表明,NNCA性能优于现有NCA方法。此外,基于NNCA的H²矩阵向量乘法,我们加速了:i) 三维积分方程求解;ii) 支持向量机(SVM)。遵循可重复计算科学的精神,本文开发的算法实现已开源发布于\url{https://github.com/SAFRAN-LAB/NNCA}。