SUBROUTINE CHEGS2( ITYPE, UPLO, N, A, LDA, B, LDB, INFO) CHARACTER * 1 UPLO COMPLEX A(LDA,*), B(LDB,*) INTEGER ITYPE, N, LDA, LDB, INFO SUBROUTINE CHEGS2_64( ITYPE, UPLO, N, A, LDA, B, LDB, INFO) CHARACTER * 1 UPLO COMPLEX A(LDA,*), B(LDB,*) INTEGER*8 ITYPE, N, LDA, LDB, INFO
SUBROUTINE HEGS2( ITYPE, UPLO, N, A, [LDA], B, [LDB], [INFO]) CHARACTER(LEN=1) :: UPLO COMPLEX, DIMENSION(:,:) :: A, B INTEGER :: ITYPE, N, LDA, LDB, INFO SUBROUTINE HEGS2_64( ITYPE, UPLO, N, A, [LDA], B, [LDB], [INFO]) CHARACTER(LEN=1) :: UPLO COMPLEX, DIMENSION(:,:) :: A, B INTEGER(8) :: ITYPE, N, LDA, LDB, INFO
void chegs2(int itype, char uplo, int n, complex *a, int lda, complex *b, int ldb, int *info);
void chegs2_64(long itype, char uplo, long n, complex *a, long lda, complex *b, long ldb, long *info);
If ITYPE = 1, the problem is A*x = lambda*B*x,
and A is overwritten by inv(U')*A*inv(U) or inv(L)*A*inv(L')
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` or L'*A*L.
B must have been previously factorized as U'*U or L*L' by CPOTRF.
On exit, if INFO = 0, the transformed matrix, stored in the same format as A.