267 SUBROUTINE zhpgvx( ITYPE, JOBZ, RANGE, UPLO, N, AP, BP, VL, VU,
268 $ il, iu, abstol, m, w, z, ldz, work, rwork,
269 $ iwork, ifail, info )
277 CHARACTER jobz, range, uplo
278 INTEGER il, info, itype, iu, ldz, m, n
279 DOUBLE PRECISION abstol, vl, vu
282 INTEGER ifail( * ), iwork( * )
283 DOUBLE PRECISION rwork( * ), w( * )
284 COMPLEX*16 ap( * ), bp( * ), work( * ), z( ldz, * )
290 LOGICAL alleig, indeig, upper, valeig, wantz
308 wantz =
lsame( jobz,
'V' )
309 upper =
lsame( uplo,
'U' )
310 alleig =
lsame( range,
'A' )
311 valeig =
lsame( range,
'V' )
312 indeig =
lsame( range,
'I' )
315 IF( itype.LT.1 .OR. itype.GT.3 )
THEN
317 ELSE IF( .NOT.( wantz .OR.
lsame( jobz,
'N' ) ) )
THEN
319 ELSE IF( .NOT.( alleig .OR. valeig .OR. indeig ) )
THEN
321 ELSE IF( .NOT.( upper .OR.
lsame( uplo,
'L' ) ) )
THEN
323 ELSE IF( n.LT.0 )
THEN
327 IF( n.GT.0 .AND. vu.LE.vl )
THEN
330 ELSE IF( indeig )
THEN
333 ELSE IF( iu.LT.min( n, il ) .OR. iu.GT.n )
THEN
339 IF( ldz.LT.1 .OR. ( wantz .AND. ldz.LT.n ) )
THEN
345 CALL
xerbla(
'ZHPGVX', -info )
356 CALL
zpptrf( uplo, n, bp, info )
364 CALL
zhpgst( itype, uplo, n, ap, bp, info )
365 CALL
zhpevx( jobz, range, uplo, n, ap, vl, vu, il, iu, abstol, m,
366 $ w, z, ldz, work, rwork, iwork, ifail, info )
374 IF( itype.EQ.1 .OR. itype.EQ.2 )
THEN
386 CALL
ztpsv( uplo, trans,
'Non-unit', n, bp, z( 1,
j ),
390 ELSE IF( itype.EQ.3 )
THEN
402 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)
ZHPGST
subroutine ztpmv(UPLO, TRANS, DIAG, N, AP, X, INCX)
ZTPMV
subroutine xerbla(SRNAME, INFO)
XERBLA
logical function lsame(CA, CB)
LSAME
subroutine zpptrf(UPLO, N, AP, INFO)
ZPPTRF
subroutine ztpsv(UPLO, TRANS, DIAG, N, AP, X, INCX)
ZTPSV
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
subroutine zhpgst(ITYPE, UPLO, N, AP, BP, INFO)
ZHPGST
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...