IRTRDSVD Compute dominant SVD of a rectangular matrix
SYNOPSIS
function varargout = irtrdsvd(A,k,params)
DESCRIPTION
IRTRDSVD Compute dominant SVD of a rectangular matrix
This computes the dominant singular values and singular vectors of a
rectangular matrix A by optimizing the function
f(U,V) = trace(U'*A*V*N)
on the manifold St(k,m) x St(k,n) using the Riemannian Trust-Region
with truncated CG inner solver.
The manifold St(k,m) x St(k,n) is the product of two orthogonal Stiefel manifolds:
St(k,n) = {X \in R^{n x k} such that X^T X = I_k}
S = irtrdsvd(A,k) returns the dominant k singular values
[U,S,V] = irtrdsvd(A,k) returns the dominant k singular vectors and values
[U,S,V,stats] = irtrdsvd(A,k) returns in addition some statistics from the solver.
See IRTR for info.
irtrdsvd(A,k,params) allows the user to specify parameters that are passed
to the IRTR solver.
params.x0 - initial iterate: x.U orthonormal and x.V orthonormal
params.Delta_bar - maximum trust-region radius
params.Delta0 - initial trust-region radius
params.epsilon - Outer Convergence tolerance (absolute)
See also irtr, rtreig, rtreig2, rtrflat