Contents
zhpgst - reduce a complex Hermitian-definite generalized
eigenproblem to standard form, using packed storage
SUBROUTINE ZHPGST(ITYPE, UPLO, N, AP, BP, INFO)
CHARACTER * 1 UPLO
DOUBLE COMPLEX AP(*), BP(*)
INTEGER ITYPE, N, INFO
SUBROUTINE ZHPGST_64(ITYPE, UPLO, N, AP, BP, INFO)
CHARACTER * 1 UPLO
DOUBLE COMPLEX AP(*), BP(*)
INTEGER*8 ITYPE, N, INFO
F95 INTERFACE
SUBROUTINE HPGST(ITYPE, UPLO, [N], AP, BP, [INFO])
CHARACTER(LEN=1) :: UPLO
COMPLEX(8), DIMENSION(:) :: AP, BP
INTEGER :: ITYPE, N, INFO
SUBROUTINE HPGST_64(ITYPE, UPLO, [N], AP, BP, [INFO])
CHARACTER(LEN=1) :: UPLO
COMPLEX(8), DIMENSION(:) :: AP, BP
INTEGER(8) :: ITYPE, N, INFO
C INTERFACE
#include <sunperf.h>
void zhpgst(int itype, char uplo, int n, doublecomplex *ap,
doublecomplex *bp, int *info);
void zhpgst_64(long itype, char uplo, long n, doublecomplex
*ap, doublecomplex *bp, long *info);
zhpgst reduces a complex Hermitian-definite generalized
eigenproblem to standard form, using packed storage.
If ITYPE = 1, the problem is A*x = lambda*B*x,
and A is overwritten by inv(U**H)*A*inv(U) or
inv(L)*A*inv(L**H)
If ITYPE = 2 or 3, the problem is A*B*x = lambda*x or
B*A*x = lambda*x, and A is overwritten by U*A*U**H or
L**H*A*L.
B must have been previously factorized as U**H*U or L*L**H
by CPPTRF.
ITYPE (input)
= 1: compute inv(U**H)*A*inv(U) or
inv(L)*A*inv(L**H);
= 2 or 3: compute U*A*U**H or L**H*A*L.
UPLO (input)
= 'U': Upper triangle of A is stored and B is
factored as U**H*U; = 'L': Lower triangle of A is
stored and B is factored as L*L**H.
N (input) The order of the matrices A and B. N >= 0.
AP (input/output) COMPLEX*16 array, dimension (N*(N+1)/2)
On entry, the upper or lower triangle of the Her-
mitian matrix A, packed columnwise in a linear
array. The j-th column of A is stored in the
array AP as follows: if UPLO = 'U', AP(i + (j-
1)*j/2) = A(i,j) for 1<=i<=j; if UPLO = 'L', AP(i
+ (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.
On exit, if INFO = 0, the transformed matrix,
stored in the same format as A.
BP (input) COMPLEX*16 array, dimension (N*(N+1)/2)
The triangular factor from the Cholesky factoriza-
tion of B, stored in the same format as A, as
returned by CPPTRF.
INFO (output)
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an ille-
gal value