Mercurial > octave
changeset 27685:cb656f5fa083
svds.m: Undo fix in 2213e82bb9d3 now that eigs() has been updated (bug #57185).
* svds.m: Remove call to real() on output of eigs() now that eigs() is
guaranteed to return real values for a symmetric input. Remove FIXME note.
author | Rik <rik@octave.org> |
---|---|
date | Wed, 13 Nov 2019 10:56:03 -0800 |
parents | becd6267d6d1 |
children | 7b68c080723d |
files | scripts/sparse/svds.m |
diffstat | 1 files changed, 2 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/scripts/sparse/svds.m Wed Nov 13 18:58:32 2019 +0100 +++ b/scripts/sparse/svds.m Wed Nov 13 10:56:03 2019 -0800 @@ -179,14 +179,12 @@ b_k = k; # Normal case, find just the k largest eigenvalues endif - ## FIXME: singular values are always real. Until eigs() guarantees - ## real results for symmetric inputs (bug #57196), use real() here. if (nargout > 1) [V, s, flag] = eigs ([sparse(m,m), b; b', sparse(n,n)], b_k, b_sigma, b_opts); - s = real (diag (s)); + s = diag (s); else - s = real (eigs ([sparse(m,m), b; b', sparse(n,n)], b_k, b_sigma, b_opts)); + s = eigs ([sparse(m,m), b; b', sparse(n,n)], b_k, b_sigma, b_opts); endif if (ischar (sigma))