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
LOGICAL function lsame(CA, CB)
LSAME
subroutine chpgv(ITYPE, JOBZ, UPLO, N, AP, BP, W, Z, LDZ, WORK, RWORK, INFO)
CHPGST
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine cpptrf(UPLO, N, AP, INFO)
CPPTRF
subroutine chpgst(ITYPE, UPLO, N, AP, BP, INFO)
CHPGST
subroutine ctpsv(UPLO, TRANS, DIAG, N, AP, X, INCX)
CTPSV
set ue cd $ADTTMP cat<< EOF > tmp f Program LinearEquations Implicit none Real j
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...