Direct solution of large sparse systems of linear algebraic equations in pure Julia
33 Stars
Updated Last
1 Year Ago
Started In
April 2022

Project Status: Active – The project is being actively developed. Build status Code Coverage Documentation Codebase Graph


Translation of the well-known sparse matrix software Sparspak (Waterloo Sparse Matrix Package), solving large sparse systems of linear algebraic equations. Sparspak is composed of the subroutines from the book "Computer Solution of Large Sparse Positive Definite Systems" by Alan George and Joseph Liu. Originally written in Fortran 77, later rewritten in Fortran 90. Here is the software translated into Julia.

The Julia rewrite is released under the MIT license with an express permission from the authors (George and Liu). Many thanks!


  • 09/18/2022: Jürgen Fuhrmann implemented dispatch to allow for arbitrary-precision floating point numbers and ForwardDiff.Dual to be routed around BLAS routines. This then should allow Automatic Differentiation (AD) of a sparse-matrix solve.
  • 09/01/2022: Configuration now allows for both Julia 1.6 (LTS) and the subsequent Julia versions.
  • 06/03/2022: The sparse LU solver has been now rewritten and tested.


Check out the list of current issues. You may find the contributor guidelines helpful.


Alan George, Joseph Liu, Computer Solution of Large Sparse Positive Definite Systems, Prentice Hall, 1981, ISBN: 0131652745, LC: QA188.G46.

Additional documents

Some design documents are in the folder docs: SIAM paper, and the User guide. These documents are only for the Fortran version of the package.