A fast direct solver for structured linear systems by recursive skeletonization

Kenneth L. Ho, Leslie Greengard

Research output: Contribution to journalArticlepeer-review


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(N3/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 languageEnglish (US)
Pages (from-to)A2507-A2532
JournalSIAM Journal on Scientific Computing
Issue number5
StatePublished - 2012


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

ASJC Scopus subject areas

  • Computational Mathematics
  • Applied Mathematics


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