### Abstract

We present a fast direct solver for structured linear systems based on multilevel matrix compression. Using the recently developed interpolative decomposition of a low-rank matrix in a recursive manner, we embed an approximation of the original matrix into a larger but highly structured sparse one that allows fast factorization and application of the inverse. The algorithm extends the Martinsson-Rokhlin method developed for 2D boundary integral equations and proceeds in two phases: a precomputation phase, consisting of matrix compression and factorization, followed by a solution phase to apply the matrix inverse. For boundary integral equations which are not too oscillatory, e.g., based on the Green functions for the Laplace or low-frequency Helmholtz equations, both phases typically have complexity O(N) in two dimensions, where N is the number of discretization points. In our current implementation, the corresponding costs in three dimensions are O(N^{3/2}) and O(N log N) for precomputation and solution, respectively. Extensive numerical experiments show a speedup of ∼100 for the solution phase over modern fast multipole methods; however, the cost of precomputation remains high. Thus, the solver is particularly suited to problems where large numbers of iterations would be required. Such is the case with ill-conditioned linear systems or when the same system is to be solved with multiple right-hand sides. Our algorithm is implemented in Fortran and freely available.

Original language | English (US) |
---|---|

Pages (from-to) | A2507-A2532 |

Journal | SIAM Journal on Scientific Computing |

Volume | 34 |

Issue number | 5 |

DOIs | |

State | Published - 2012 |

### Keywords

- Fast algorithms
- Fast multipole method
- Integral equations
- Interpolative decomposition
- Multilevel matrix compression
- Sparse direct solver

### ASJC Scopus subject areas

- Computational Mathematics
- Applied Mathematics

## Fingerprint Dive into the research topics of 'A fast direct solver for structured linear systems by recursive skeletonization'. Together they form a unique fingerprint.

## Cite this

*SIAM Journal on Scientific Computing*,

*34*(5), A2507-A2532. https://doi.org/10.1137/120866683