New algebraic fast algorithms for $N$-body problems in two and three dimensions

Ritesh Khan,Sivaram Ambikasaran
2024-04-27
Abstract:This article presents two new algebraic algorithms to perform fast matrix-vector product for $N$-body problems in $d$ dimensions, namely nHODLR$d$D (nested algorithm) and s-nHODLR$d$D (semi-nested or partially nested algorithm). The nHODLR$d$D and s-nHODLR$d$D algorithms are the nested and semi-nested version of our previously proposed fast algorithm, the hierarchically off-diagonal low-rank matrix in $d$ dimensions (HODLR$d$D), respectively, where the admissible clusters are the certain far-field and the vertex-sharing clusters. We rely on algebraic low-rank approximation techniques (ACA and NCA) and develop both algorithms in a black-box (kernel-independent) fashion. The initialization time of the proposed hierarchical structures scales quasi-linearly. Using the nHODLR$d$D and s-nHODLR$d$D hierarchical structures, one can perform the multiplication of a dense matrix (arising out of $N$-body problems) with a vector that scales as $\mathcal{O}(pN)$ and $\mathcal{O}(pN \log(N))$, respectively, where $p$ grows at most poly logarithmically with $N$. The numerical results in $2$D and $3$D $(d=2,3)$ show that the proposed nHODLR$d$D algorithm is competitive to the algebraic Fast Multipole Method in $d$ dimensions with respect to the matrix-vector product time and space complexity. The C++ implementation with OpenMP parallelization of the proposed algorithms is available at \url{<a class="link-external link-https" href="https://github.com/riteshkhan/nHODLRdD/" rel="external noopener nofollow">this https URL</a>}.
Numerical Analysis,Mathematical Physics
What problem does this paper attempt to address?
The problem that this paper attempts to solve is to propose new algebraic hierarchical matrix algorithms for the N - body problem in two - and three - dimensional spaces in order to achieve fast matrix - vector multiplications (MVPs). Specifically, the authors propose two new algorithms: nHODLR dD (nested algorithm) and s - nHODLR dD (semi - nested/partially nested algorithm), aiming to improve the computational efficiency when dealing with large - scale dense matrices. ### Main problems: 1. **Reducing computational complexity**: The time and space complexity of directly computing the product of an \( N\times N \) kernel matrix and a vector is \( O(N^{2}) \), which is infeasible when dealing with large - scale problems. Therefore, more efficient algorithms need to be developed to reduce the complexity. 2. **Utilizing the block - low - rank structure**: Kernel matrices usually have a block - low - rank structure, that is, some sub - blocks can be approximated as low - rank matrices. How to effectively utilize this structure for matrix operations is a key issue. 3. **Extension to high - dimensional spaces**: Many existing algorithms perform reasonably well in two - or three - dimensional spaces, but their performance may decline in higher - dimensional spaces. Therefore, effective algorithms applicable to high - dimensional spaces need to be developed. 4. **Application of weak admissibility conditions**: Traditional strong admissibility conditions (such as FMM and Tree code) are only applicable to far - field clusters, while weak admissibility conditions can be extended to vertex - sharing clusters. How to construct an effective hierarchical matrix representation under such conditions is a challenge. ### Specific contributions of the paper: - Proposed two new nested and semi - nested versions of fast matrix - vector multiplication algorithms (nHODLR dD and s - nHODLR dD), which are based on weak admissibility conditions and can handle the N - body problem more efficiently. - Implemented these algorithms through pure algebraic methods (such as ACA and NCA), and they are kernel - independent (black - box) and applicable to various kernel functions. - Conducted extensive numerical experiments on the proposed algorithms, verified their performance on different kernel matrices, and compared them with existing algorithms such as H2 and H. - Provided a C++ implementation and open - sourced the code for easy use and further improvement by other researchers. In summary, the main objective of this paper is to develop more efficient algebraic hierarchical matrix algorithms to solve the computational bottleneck of matrix - vector multiplication in the N - body problem and extend to higher - dimensional spaces through weak admissibility conditions.