svd
, which uses random preconditioning to restart when svd fails to convergex
,
qrSVD
calls genQ
to generate a
random orthonormal matrix, and uses this random matrix to
precondition x
. The svd of the preconditioned matrix
is calculated, and adjusted to account for the
preconditioning process in order to find svd(x)
.qrSVD(x, lim_attempts = 50, warning_type = "silent",
warning_file = "qrSVD_warnings.txt", ...)
svd
gives warnings. 'silent' ignores
these warnings, 'print' prints the warning to the
console, and 'fwarning_type
is set to 'file'.svd
, such
as nv
and nu
.svd
function).qrSVD
will attempt the standard svd
function before preconditioning the matrix $x$.
fastSVD
x <-matrix(rnorm(3*5),nrow=3,ncol=5)
svdx <- qrSVD(x)
svdx
Run the code above in your browser using DataLab