276 SUBROUTINE zhpgvx( ITYPE, JOBZ, RANGE, UPLO, N, AP, BP, VL, VU,
277 $ IL, IU, ABSTOL, M, W, Z, LDZ, WORK, RWORK,
278 $ IWORK, IFAIL, INFO )
286 CHARACTER JOBZ, RANGE, UPLO
287 INTEGER IL, INFO, ITYPE, IU, LDZ, M, N
288 DOUBLE PRECISION ABSTOL, VL, VU
291 INTEGER IFAIL( * ), IWORK( * )
292 DOUBLE PRECISION RWORK( * ), W( * )
293 COMPLEX*16 AP( * ), BP( * ), WORK( * ), Z( ldz, * )
299 LOGICAL ALLEIG, INDEIG, UPPER, VALEIG, WANTZ
317 wantz = lsame( jobz,
'V' )
318 upper = lsame( uplo,
'U' )
319 alleig = lsame( range,
'A' )
320 valeig = lsame( range,
'V' )
321 indeig = lsame( range,
'I' )
324 IF( itype.LT.1 .OR. itype.GT.3 )
THEN 326 ELSE IF( .NOT.( wantz .OR. lsame( jobz,
'N' ) ) )
THEN 328 ELSE IF( .NOT.( alleig .OR. valeig .OR. indeig ) )
THEN 330 ELSE IF( .NOT.( upper .OR. lsame( uplo,
'L' ) ) )
THEN 332 ELSE IF( n.LT.0 )
THEN 336 IF( n.GT.0 .AND. vu.LE.vl )
THEN 339 ELSE IF( indeig )
THEN 342 ELSE IF( iu.LT.min( n, il ) .OR. iu.GT.n )
THEN 348 IF( ldz.LT.1 .OR. ( wantz .AND. ldz.LT.n ) )
THEN 354 CALL xerbla(
'ZHPGVX', -info )
365 CALL zpptrf( uplo, n, bp, info )
373 CALL zhpgst( itype, uplo, n, ap, bp, info )
374 CALL zhpevx( jobz, range, uplo, n, ap, vl, vu, il, iu, abstol, m,
375 $ w, z, ldz, work, rwork, iwork, ifail, info )
383 IF( itype.EQ.1 .OR. itype.EQ.2 )
THEN 395 CALL ztpsv( uplo, trans,
'Non-unit', n, bp, z( 1, j ),
399 ELSE IF( itype.EQ.3 )
THEN 411 CALL ztpmv( uplo, trans,
'Non-unit', n, bp, z( 1, j ),
subroutine zhpgvx(ITYPE, JOBZ, RANGE, UPLO, N, AP, BP, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, RWORK, IWORK, IFAIL, INFO)
ZHPGVX
subroutine zpptrf(UPLO, N, AP, INFO)
ZPPTRF
subroutine zhpgst(ITYPE, UPLO, N, AP, BP, INFO)
ZHPGST
subroutine ztpsv(UPLO, TRANS, DIAG, N, AP, X, INCX)
ZTPSV
subroutine ztpmv(UPLO, TRANS, DIAG, N, AP, X, INCX)
ZTPMV
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zhpevx(JOBZ, RANGE, UPLO, N, AP, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, RWORK, IWORK, IFAIL, INFO)
ZHPEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matric...