Rev | Line | |
---|
[37] | 1 | function y = svd_suff_data(S,r) |
---|
| 2 | % S is the singular value part of the svd of the nullspaces of the column |
---|
| 3 | % r-tuples. We'll want to be able to take the r least significant columns |
---|
| 4 | % of U. This is right because the columns of U should span the whole space |
---|
| 5 | % that M's columns might span. That is, M is FxP. The columns of U should |
---|
| 6 | % span the F-dimensional Euclidean space, since U is FxF. However, we want |
---|
| 7 | % to make sure that the F-r-1'th singular value of S isn't tiny. If it is, |
---|
| 8 | % our answer is totally unreliable, because the nullspaces of the column |
---|
| 9 | % r-tuples don't have sufficient rank. If this happens, it means that the |
---|
| 10 | % intersection of the column cross-product spaces is bigger than r-dimensional, |
---|
| 11 | % and randomly choosing an r-dimensional subspace of that isn't likely to |
---|
| 12 | % give the right answer. |
---|
| 13 | Snumcols = size(S,2); |
---|
| 14 | Snumrows = size(S,1); |
---|
| 15 | if (Snumrows == 0 | Snumcols + r < Snumrows) |
---|
| 16 | y = 0; |
---|
| 17 | else |
---|
| 18 | y = S(Snumrows-r,Snumrows-r)>.001; |
---|
| 19 | end |
---|
Note: See
TracBrowser
for help on using the repository browser.