Inverse of a Symmetric Positive Definite Matrix

ASA007, a C library which computes the inverse of a symmetric positive definite matrix, by Michael Healy.

ASA007 is Applied Statistics Algorithm 7.

The algorithm implemented here uses a compressed storage for both the matrix A and the factor U. This saves some storage, but can make computations a little awkward.


The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.


ASA007 is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version

Related Data and Programs:

ASA006, a C library which computes the Cholesky factorization of a symmetric positive definite matrix. A version of this routine is used by ASA007.


ASA047, a C library which implements the Nelder-Mead minimization algorithm, and uses a version of ASA007 for the computation.

LINPACK_D, a C library which includes routines to compute the inverse of symmetric positive matrix using double precision real arithmetic.


Michael Healy


  1. Michael Healy,
    Algorithm AS 7: Inversion of a Positive Semi-Definite Symmetric Matrix,
    Applied Statistics,
    Volume 17, Number 2, 1968, pages 198-199.

Source Code:

Last revised on 20 June 2019.