ZSTEQR - compute all eigenvalues and, optionally, eigen
vectors of a symmetric tridiagonal matrix using the
implicit QL or QR method
SYNOPSIS
SUBROUTINE ZSTEQR( COMPZ, N, D, E, Z, LDZ, WORK, INFO )
CHARACTER COMPZ
INTEGER INFO, LDZ, N
DOUBLE PRECISION D( * ), E( * ), WORK( * )
COMPLEX*16 Z( LDZ, * )
PURPOSE
ZSTEQR computes all eigenvalues and, optionally, eigenvec
tors of a symmetric tridiagonal matrix using the implicit
QL or QR method. The eigenvectors of a full or band com
plex Hermitian matrix can also be found if ZHETRD or ZHP
TRD or ZHBTRD has been used to reduce this matrix to
tridiagonal form.
ARGUMENTS
COMPZ (input) CHARACTER*1
= 'N': Compute eigenvalues only.
= 'V': Compute eigenvalues and eigenvectors of
the original Hermitian matrix. On entry, Z must
contain the unitary matrix used to reduce the
original matrix to tridiagonal form. = 'I': Com
pute eigenvalues and eigenvectors of the tridiago
nal matrix. Z is initialized to the identity
matrix.
N (input) INTEGER
The order of the matrix. N >= 0.
D (input/output) DOUBLE PRECISION array, dimension
(N)
On entry, the diagonal elements of the tridiagonal
matrix. On exit, if INFO = 0, the eigenvalues in
ascending order.
E (input/output) DOUBLE PRECISION array, dimension
(N-1)
On entry, the (n-1) subdiagonal elements of the
tridiagonal matrix. On exit, E has been
destroyed.
Z (input/output) COMPLEX*16 array, dimension (LDZ,
N)
On entry, if COMPZ = 'V', then Z contains the
nal form. On exit, if INFO = 0, then if COMPZ =
'V', Z contains the orthonormal eigenvectors of
the original Hermitian matrix, and if COMPZ = 'I',
Z contains the orthonormal eigenvectors of the
symmetric tridiagonal matrix. If COMPZ = 'N',
then Z is not referenced.
LDZ (input) INTEGER
The leading dimension of the array Z. LDZ >= 1,
and if eigenvectors are desired, then LDZ >=
max(1,N).
WORK (workspace) DOUBLE PRECISION array,
dimension (max(1,2*N-2))
If COMPZ = 'N', then WORK is not referenced.
INFO (output) INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an ille
gal value
> 0: the algorithm has failed to find all the
eigenvalues in a total of 30*N iterations; if INFO
= i, then i elements of E have not converged to
zero; on exit, D and E contain the elements of a
symmetric tridiagonal matrix which is unitarily
similar to the original matrix.
Man(1) output converted with
man2html