Although [2] describes an implementation of CSI-MSVD to approximate singular values, singular vectors are not estimated. Two problems which arise from the lack of singular vector approximations are listed below.
step of the Chebyshev
iteration, the quantity

is computed, where
is an approximation to
the
largest singular value of A. The
procedure terminates when this quantity is within
some desired tolerance
, or when k exceeds the
user-specified input of
, the maximum number of iterations allowed.
The estimation of singular vectors from the eigenvectors
derived by CSI-MSVD is a non-trivial task.
The tridiagonal Jacobi matrix
defined by
Equation (17) has been constructed
so that characteristic equation corresponding to
has the
same roots as the iteration matrix. Thus, the method does not
explicitly construct a basis for the subspace spanned by the
eigenvectors, so that the methods used in Lanczos or other popular
Krylov-subspace methods do not have obvious analogs in CSI-MSVD.
However, as discussed in Section 2.1,
especially when parameters such as
defined in Equation
(10) are chosen optimally, the
iterative method defined by Equation (11) should
converge to
such that
. As
,
the eigenvector
of the appropriately scaled matrix M corresponds to the
eigenvalue nearest 1. The parameters that affect the convergence of CSI-MSVD
are:
, chosen so that the
matrix
has singular values
(or equivalently, the two-cyclic matrix M has eigenvalues such
that
). Ideally, since the eigenvector is the
solution of a system of the form
, an optimal
choice for the case b=0 would be
.
for the Chebyshev polynomials
defined in Equations (21) and (22).
As discussed in [2], setting
effectively
suppresses all singular values
having magnitude less
than
. It is therefore desirable to set
in order to accelerate convergence to the
largest singular value.
The convergence of the iterative method to the eigenvector
is affected by the choice of the above parameters, which are not known
a priori. Also, after k steps of the iterative method, the recurrences
provided by Equations (22) and (21) allow the
calculation of 2k moments from the Chebyshev iterates, so that the
construction of the Jacobi matrix is accelerated. However, in the
absence of any obvious method to approximate Chebyshev
iterates from the Jacobi matrix, the convergence of the iterative method
to the eigenvector is slower than the convergence of the Jacobi matrix to
the eigenvalues. To overcome these problems, a two-pass scheme has been
developed.
Figure 3: Simple flow chart for computing the k-largest singular triplets
using CSI-MSVD.
Figure 3 illustrates the following steps of the two-pass scheme.
steps of CSI-MSVD. This involves the execution of all of the steps shown
in Figure 2. The iteration is terminated when either
iterates have been calculated.
be the eigenvalues of
at the end of PASS1, and
the current Chebyshev iterate.
If the residual norm
is not within some desired tolerance
, the scaling
parameter
should be set to
, and the damping
parameter
set to
.
Then, at most
steps of the Chebyshev iteration are performed
while examining the convergence as in Step 1.
(as defined in Section 1.2).
If a higher accuracy in the current approximations to the
singular value and corresponding singular vector obtained
from
is desired, some refinement procedure may be used, with
starting values set to the current estimates.
In practice, the accelerated construction of the Jacobi matrix produces
eigenvalue approximations of at least
accuracy, and
as discussed in [19] a single step of inverse-iteration could
be used to approximate the eigenvectors to
accuracy. However,
as mentioned in Section 1.3,
for large, sparse matrices it is desirable to avoid fill-in from direct
methods. The current PVM implementation of CSI-MSVD uses an
ANSI-C translation of
the subroutine SYMMLQ [1,18] for refinement
of the eigenvector approximation. SYMMLQ is a Conjugate Gradient method
for symmetric indefinite systems of the form
where
is a specified scalar value.
By setting b=0,
to
, the
computed vector x may approximate an eigenvector of the matrix B.
After the residual error has been reduced to the
desired tolerance, Wielandt deflation
[20] can be employed to repeat the above 3 steps
and thereby approximate the next largest singular triplet.