zpteqr(3)
NAME
- ZPTEQR - compute all eigenvalues and, optionally, eigen
- vectors of a symmetric positive definite tridiagonal matrix by
- first factoring the matrix using DPTTRF and then calling ZBDSQR
- to compute the singular values of the bidiagonal factor
SYNOPSIS
SUBROUTINE ZPTEQR( COMPZ, N, D, E, Z, LDZ, WORK, INFO )
CHARACTER COMPZ
INTEGER INFO, LDZ, N
DOUBLE PRECISION D( * ), E( * ), WORK( * )
COMPLEX*16 Z( LDZ, * )
PURPOSE
- ZPTEQR computes all eigenvalues and, optionally, eigenvec
- tors of a symmetric positive definite tridiagonal matrix by first
- factoring the matrix using DPTTRF and then calling ZBDSQR to com
- pute the singular values of the bidiagonal factor. This routine
- computes the eigenvalues of the positive definite tridiagonal ma
- trix to high relative accuracy. This means that if the eigenval
- ues range over many orders of magnitude in size, then the small
- eigenvalues and corresponding eigenvectors will be computed more
- accurately than, for example, with the standard QR method.
- The eigenvectors of a full or band positive definite Her
- mitian matrix can also be found if ZHETRD, ZHPTRD, or ZHBTRD has
- been used to reduce this matrix to tridiagonal form. (The reduc
- tion to tridiagonal form, however, may preclude the possibility
- of obtaining high relative accuracy in the small eigenvalues of
- the original matrix, if these eigenvalues range over many orders
- of magnitude.)
ARGUMENTS
- COMPZ (input) CHARACTER*1
- = 'N': Compute eigenvalues only.
= 'V': Compute eigenvectors of original Hermitian
- matrix also. Array Z contains the unitary matrix used to reduce
- the original matrix to tridiagonal form. = 'I': Compute eigen
- vectors of tridiagonal matrix also.
- N (input) INTEGER
- The order of the matrix. N >= 0.
- D (input/output) DOUBLE PRECISION array, dimension
- (N)
- On entry, the n diagonal elements of the tridiago
- nal matrix. On normal exit, D contains the eigenvalues, in de
- scending 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', the unitary matrix used
- in the reduction to tridiagonal form. On exit, if COMPZ = 'V',
- the orthonormal eigenvectors of the original Hermitian matrix; if
- COMPZ = 'I', the orthonormal eigenvectors of the tridiagonal ma
- trix. If INFO > 0 on exit, Z contains the eigenvectors associat
- ed with only the stored eigenvalues. If COMPZ = 'N', then Z is
- not referenced.
- LDZ (input) INTEGER
- The leading dimension of the array Z. LDZ >= 1,
- and if COMPZ = 'V' or 'I', LDZ >= max(1,N).
- WORK (workspace) DOUBLE PRECISION array, dimension
- (4*N)
- INFO (output) INTEGER
- = 0: successful exit.
< 0: if INFO = -i, the i-th argument had an ille
- gal value.
> 0: if INFO = i, and i is: <= N the Cholesky
- factorization of the matrix could not be performed because the i
- th principal minor was not positive definite. > N the SVD al
- gorithm failed to converge; if INFO = N+i, i off-diagonal ele
- ments of the bidiagonal factor did not converge to zero.
- LAPACK version 3.0 15 June 2000