Mercurial > octave
diff libinterp/corefcn/svd.cc @ 29418:9245ae55b6bd
Use Octave coding conventions in patch for GEJSV SVD driver (bug #55727).
* libinterp/corefcn/svd.cc, liboctave/numeric/svd.cc: Eliminate trailing
spaces. Use indent of 2 spaces in #define. Use space between function
name and opening parenthesis.
author | Rik <rik@octave.org> |
---|---|
date | Tue, 09 Mar 2021 14:23:47 -0800 |
parents | 9b6bf68ea663 |
children | 32c3a5805893 |
line wrap: on
line diff
--- a/libinterp/corefcn/svd.cc Tue Mar 09 21:05:54 2021 +0100 +++ b/libinterp/corefcn/svd.cc Tue Mar 09 14:23:47 2021 -0800 @@ -167,8 +167,8 @@ singular matrices in addition to singular values) there is a choice of two routines in @sc{lapack}. The default routine used by Octave is @code{gesvd}. The alternative is @code{gesdd} which is 5X faster, but may use more memory -and may be inaccurate for some input matrices. There is a third routine -@code{gejsv}, suitable for better accuracy at extreme scale. See the +and may be inaccurate for some input matrices. There is a third routine +@code{gejsv}, suitable for better accuracy at extreme scale. See the documentation for @code{svd_driver} for more information on choosing a driver. @seealso{svd_driver, svds, eig, lu, chol, hess, qr, qz} @end deftypefn */) @@ -421,8 +421,8 @@ The routine @code{gejsv} uses a preconditioned Jacobi SVD algorithm. Unlike @code{gesvd} and @code{gesdd}, in @code{gejsv}, there is no bidiagonalization -step that could contaminate accuracy in some extreme case. Also, @code{gejsv} -is shown to be optimally accurate in some sense. However, the speed is slower +step that could contaminate accuracy in some extreme cases. Also, @code{gejsv} +is known to be optimally accurate in some sense. However, the speed is slower (single threaded at its core) and uses more memory (O(min(M,N) ^ 2 + M + N)). Beyond speed and memory issues, there have been instances where some input