The extension of the scheme in §7.6 within a block Arnoldi method is straightforward. The chief difference is that an implicitly shifted QR algorithm that retains band Hessenberg form is needed. As with the standard implicitly shifted QR algorithm, a sequence of unitary matrices are constructed and applied so that an updated band Hessenberg matrix results.
Numerous choices are possible for the selection of the shifts used during
the QR algorithm, including the specific choice of
If the shifts are in complex conjugate pairs, the implicit double
shift [198, pp. 355-358] can be used to avoid complex arithmetic.
Typically, the shifts are selected by utilizing the spectral information
contained in
.
Partition the eigenvalues of
so that
In Algorithm 7.12, the integer is typically
set to
, the number of wanted eigenvalues,
during the input step. Once the iteration loop has been entered, the values
of
,
, and thus
may vary for every value of
When
, we cannot apply all
unwanted eigenvalues
as shifts. We are then faced with the question of selecting which
shifts to apply and whether we should consider
applying more than
shifts.
For example, shifts can be applied until a Ritz pair satisfies the
convergence tolerance. The Ritz pairs can then be deflated (or
locked). (This is equivalent to the deflated iterative
Arnoldi algorithm given by Saad [387, p. 181] and used in
the implementations in [24,398].) This approach allows us
to implicitly apply a polynomial filter of the maximum degree.
(Application of more than
shifts will require applying explicit
polynomials in
) However, as more shifts are applied, the cost
in computing the subsequent Arnoldi reduction increases.
A strategy that varies ,
(relative to
) and the shifts used
during every iteration will give the best results. This is the
subject of current research. The recent report [421]
discusses an adaptive strategy for symmetric eigenvalue problems.