# Sparse SVD (smallest SVs)

**URL:** https://discourse.julialang.org/t/sparse-svd-smallest-svs/3645
**Category:** General Usage
**Created:** [May 11, 2017, 8:57am UTC](https://discourse.julialang.org/t/sparse-svd-smallest-svs/3645 "2017-05-11T08:57:28Z")
**Posts on this page:** 2
**Page:** 2

<div class="post-metadata">

### Author: ![andreasnoack](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/andreasnoack/32/27_2.png) [@andreasnoack](https://discourse.julialang.org/u/andreasnoack)
#### Post date: [May 18, 2017, 1:42pm UTC](https://discourse.julialang.org/t/sparse-svd-smallest-svs/3645/21 "2017-05-18T13:42:05Z")

</div>

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
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));

```

---

<div class="post-metadata">

### Author: ![rleegates](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rleegates/32/1029_2.png) [@rleegates](https://discourse.julialang.org/u/rleegates)
#### Post date: [May 18, 2017, 2:30pm UTC](https://discourse.julialang.org/t/sparse-svd-smallest-svs/3645/22 "2017-05-18T14:30:52Z")

</div>

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

[Previous page](https://discourse.julialang.org/t/sparse-svd-smallest-svs/3645.md?page=1)
