zhbtrd.f(3) LAPACK zhbtrd.f(3)
subroutine zhbtrd (VECT, UPLO, N, KD, AB, LDAB, D, E, Q, LDQ, WORK, INFO)
subroutine zhbtrd (characterVECT, characterUPLO, integerN, integerKD, complex*16, dimension( ldab, * )AB, integerLDAB, double precision,
dimension( * )D, double precision, dimension( * )E, complex*16, dimension( ldq, * )Q, integerLDQ, complex*16, dimension( * )WORK,
ZHBTRD reduces a complex Hermitian band matrix A to real symmetric
tridiagonal form T by a unitary similarity transformation:
Q**H * A * Q = T.
VECT is CHARACTER*1
= 'N': do not form Q;
= 'V': form Q;
= 'U': update a matrix X, by forming X*Q.
UPLO is CHARACTER*1
= 'U': Upper triangle of A is stored;
= 'L': Lower triangle of A is stored.
N is INTEGER
The order of the matrix A. N >= 0.
KD is INTEGER
The number of superdiagonals of the matrix A if UPLO = 'U',
or the number of subdiagonals if UPLO = 'L'. KD >= 0.
AB is COMPLEX*16 array, dimension (LDAB,N)
On entry, the upper or lower triangle of the Hermitian band
matrix A, stored in the first KD+1 rows of the array. The
j-th column of A is stored in the j-th column of the array AB
if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-kd)<=i<=j;
if UPLO = 'L', AB(1+i-j,j) = A(i,j) for j<=i<=min(n,j+kd).
On exit, the diagonal elements of AB are overwritten by the
diagonal elements of the tridiagonal matrix T; if KD > 0, the
elements on the first superdiagonal (if UPLO = 'U') or the
first subdiagonal (if UPLO = 'L') are overwritten by the
off-diagonal elements of T; the rest of AB is overwritten by
values generated during the reduction.
LDAB is INTEGER
The leading dimension of the array AB. LDAB >= KD+1.
D is DOUBLE PRECISION array, dimension (N)
The diagonal elements of the tridiagonal matrix T.
E is DOUBLE PRECISION array, dimension (N-1)
The off-diagonal elements of the tridiagonal matrix T:
E(i) = T(i,i+1) if UPLO = 'U'; E(i) = T(i+1,i) if UPLO = 'L'.
Q is COMPLEX*16 array, dimension (LDQ,N)
On entry, if VECT = 'U', then Q must contain an N-by-N
matrix X; if VECT = 'N' or 'V', then Q need not be set.
if VECT = 'V', Q contains the N-by-N unitary matrix Q;
if VECT = 'U', Q contains the product X*Q;
if VECT = 'N', the array Q is not referenced.
LDQ is INTEGER
The leading dimension of the array Q.
LDQ >= 1, and LDQ >= N if VECT = 'V' or 'U'.
WORK is COMPLEX*16 array, dimension (N)
INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
Modified by Linda Kaufman, Bell Labs.
Definition at line 163 of file zhbtrd.f.
Generated automatically by Doxygen for LAPACK from the source code.
Version 3.4.2 Tue Sep 25 2012 zhbtrd.f(3)