Note: before using this routine, please read the Users' Note for your implementation to check the interpretation of bold italicised terms and other implementation-dependent details.
The routine may be called by its
LAPACK
name zhbev.
3 Description
The Hermitian band matrix A is first reduced to real tridiagonal form, using unitary similarity transformations, and then the QR algorithm is applied to the tridiagonal matrix to compute the eigenvalues and (optionally) the eigenvectors.
4 References
Anderson E, Bai Z, Bischof C, Blackford S, Demmel J, Dongarra J J, Du Croz J J, Greenbaum A, Hammarling S, McKenney A and Sorensen D (1999) LAPACK Users' Guide (3rd Edition) SIAM, Philadelphia http://www.netlib.org/lapack/lug
Golub G H and Van Loan C F (1996) Matrix Computations (3rd Edition) Johns Hopkins University Press, Baltimore
5 Parameters
1: JOBZ – CHARACTER(1)Input
On entry: indicates whether eigenvectors are computed.
JOBZ='N'
Only eigenvalues are computed.
JOBZ='V'
Eigenvalues and eigenvectors are computed.
Constraint:
JOBZ='N' or 'V'.
2: UPLO – CHARACTER(1)Input
On entry: if UPLO='U', the upper triangular part of A is stored.
If UPLO='L', the lower triangular part of A is stored.
Constraint:
UPLO='U' or 'L'.
3: N – INTEGERInput
On entry: n, the order of the matrix A.
Constraint:
N≥0.
4: KD – INTEGERInput
On entry: if UPLO='U', the number of superdiagonals, kd, of the matrix A.
If UPLO='L', the number of subdiagonals, kd, of the matrix A.
Note: the second dimension of the array AB
must be at least
max1,N.
On entry: the upper or lower triangle of the n by n Hermitian band matrix A.
The matrix is stored in rows 1 to kd+1, more precisely,
if UPLO='U', the elements of the upper triangle of A within the band must be stored with element Aij in ABkd+1+i-jj for max1,j-kd≤i≤j;
if UPLO='L', the elements of the lower triangle of A within the band must be stored with element Aij in AB1+i-jj for j≤i≤minn,j+kd.
On exit: AB is overwritten by values generated during the reduction to tridiagonal form.
The first superdiagonal or subdiagonal and the diagonal of the tridiagonal matrix T are returned in AB using the same storage format as described above.
6: LDAB – INTEGERInput
On entry: the first dimension of the array AB as declared in the (sub)program from which F08HNF (ZHBEV) is called.