165 SUBROUTINE chpgv( ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK,
175 INTEGER INFO, ITYPE, LDZ, N
178 REAL RWORK( * ), W( * )
179 COMPLEX AP( * ), BP( * ), WORK( * ), Z( ldz, * )
200 wantz = lsame( jobz,
'V' )
201 upper = lsame( uplo,
'U' )
204 IF( itype.LT.1 .OR. itype.GT.3 )
THEN
206 ELSE IF( .NOT.( wantz .OR. lsame( jobz,
'N' ) ) )
THEN
208 ELSE IF( .NOT.( upper .OR. lsame( uplo,
'L' ) ) )
THEN
210 ELSE IF( n.LT.0 )
THEN
212 ELSE IF( ldz.LT.1 .OR. ( wantz .AND. ldz.LT.n ) )
THEN
216 CALL xerbla(
'CHPGV ', -info )
227 CALL cpptrf( uplo, n, bp, info )
235 CALL chpgst( itype, uplo, n, ap, bp, info )
236 CALL chpev( jobz, uplo, n, ap, w, z, ldz, work, rwork, info )
245 IF( itype.EQ.1 .OR. itype.EQ.2 )
THEN
257 CALL ctpsv( uplo, trans,
'Non-unit', n, bp, z( 1, j ),
261 ELSE IF( itype.EQ.3 )
THEN
273 CALL ctpmv( uplo, trans,
'Non-unit', n, bp, z( 1, j ),
subroutine ctpmv(UPLO, TRANS, DIAG, N, AP, X, INCX)
CTPMV
subroutine chpgst(ITYPE, UPLO, N, AP, BP, INFO)
CHPGST
subroutine cpptrf(UPLO, N, AP, INFO)
CPPTRF
subroutine chpgv(ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK, RWORK, INFO)
CHPGV
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine chpev(JOBZ, UPLO, N, AP, W, Z, LDZ, WORK, RWORK, INFO)
CHPEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine ctpsv(UPLO, TRANS, DIAG, N, AP, X, INCX)
CTPSV