Sparse SVD (smallest SVs)

Right now, you can’t because we don’t wrap all of SPQR. I have a branch with support for extracting Q and R but it is not finished yet. However, actually we have a little more functionality than we expose. You can multiply with Q and Q’ so maybe that is sufficient. The functions are not meant to be used in the current versions but you can do

julia> A = sprandn(1000,1000,0.05) |> t -> t + t';

julia> b = ones(size(A,1));

julia> F = qrfact(A);

julia> SparseArrays.SPQR.qmult(SparseArrays.SPQR.QTX, F, SparseArrays.CHOLMOD.Dense(b));

For computing the nullspace, I believe I need both Q and R.