A pure-Julia, rank-revealing, column-pivoted Householder QR factorization that
operates directly on
SparseMatrixCSC
sparse matrices. Targets the same "small-to-medium sparse" niche as KLU does for LU
— low symbolic-phase overhead, no BLAS-3 / multifrontal machinery — while preserving
the rank-revealing guarantees of LAPACK's column-pivoted QR.
For information on using the package, see the stable documentation. Use the in-development documentation for the version of the documentation, which contains the unreleased features.
using Pkg
Pkg.add("SparseColumnPivotedQR")
using SparseArrays, SparseColumnPivotedQR
A = sparse([1.0 0 2 0 0;
0 3 0 0 1;
4 0 5 0 0;
0 0 0 6 0;
0 7 0 0 8])
b = [1.0, 2.0, 3.0, 4.0, 5.0]
F = scpqr(A)
x = F \ b