f02fjf
f02fjf
© Numerical Algorithms Group, 2002.
Purpose
F02FJF Selected eigenvalues and eigenvectors of sparse symmetric
eigenproblem (Black Box)
Synopsis
[m,x,d,noits,ifail] = f02fjf(m,dot,image,monit,novecs,x<,tol,noits,ifail>)
Description
F02FJF finds the m eigenvalues of largest absolute value and the
corresponding eigenvectors for the real eigenvalue problem
Cx=(lambda)x (1)
where C is an n by n matrix such that
T
BC=C B (2)
for a given positive-definite matrix B. C is said to be B-
symmetric. Different specifications of C allow for the solution
of a variety of eigenvalue problems. For example, when
T
C=A and B=I where A=A
the routine finds the m eigenvalues of largest absolute magnitude
for the standard symmetric eigenvalue problem
Ax=(lambda)x. (3)
The routine is intended for the case where A is sparse.
As a second example, when
-1
C=B A
where
T
A=A
the routine finds the m eigenvalues of largest absolute magnitude
for the generalized symmetric eigenvalue problem
Ax=(lambda)Bx. (4)
The routine is intended for the case where A and B are sparse.
The routine does not require C explicitly, but C is specified via
a user-supplied routine IMAGE which, given an n element vector z,
computes the image w given by
w=Cz.
-1
For instance, in the above example, where C=B A, routine IMAGE
will need to solve the positive-definite system of equations
Bw=Az for w.
To find the m eigenvalues of smallest absolute magnitude of (3)
-1
we can choose C=A and hence find the reciprocals of the
required eigenvalues, so that IMAGE will need to solve Aw=z for
-1
w, and correspondingly for (4) we can choose C=A B and solve
Aw=Bz for w.
A table of examples of choice of IMAGE is given in Table 3.1. It
should be remembered that the routine also returns the
corresponding eigenvectors and that B is positive-definite.
Throughout A is assumed to be symmetric and, where necessary,
non-singularity is also assumed.
Eigenvalues Problem
Required
Ax=(lambda)x (B=I)Ax=(lambda)Bx ABx=(lambda)x
Largest Compute Solve Compute
w=Az Bw=Az w=ABz
Smallest Solve Solve Solve
(Find Aw=z Aw=Bz Av=z, Bw=(nu)
1/(lambda))
Furthest Compute Solve Compute
from w=(A-(sigma)I)z Bw=(A-(sigma)B)z w=(AB-(sigma)I)z
(sigma)
(Find
(lambda)-
(sigma))
Closest to Solve Solve Solve
(sigma) (A-(sigma)I)w=z (A-(sigma)B)w=Bz (AB-(sigma)I)w=z
(Find 1/((
lambda)-
(sigma)))
Table 3.1
The Requirement of IMAGE for Various Problems
The matrix B also need not be supplied explicitly, but is
specified via a user-supplied routine DOT which, given n element
T
vectors z and w, computes the generalized dot product w Bz.
The routine performs simultaneous iteration on k>m vectors.
Initial estimates to p<=k eigenvectors, corresponding to the p
eigenvalues of C of largest absolute value, may be supplied by
the user to F02FJF. When possible k should be chosen so that the
kth eigenvalue is not too close to the m required eigenvalues,
but if k is initially chosen too small then F02FJF may be re-
entered, supplying approximations to the k eigenvectors found so
far and with k then increased.
Parameters
f02fjf
Required Input Arguments:
m integer
dot function (User-Supplied)
image function (User-Supplied)
monit function (User-Supplied)
novecs integer
x (:,:) real
Optional Input Arguments: <Default>
tol real eps
noits integer 100
ifail integer -1
Output Arguments:
m integer
x (:,:) real
d (:) real
noits integer
ifail integer