126 SUBROUTINE zsytri2( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO )
134 INTEGER INFO, LDA, LWORK, N
138 COMPLEX*16 A( lda, * ), WORK( * )
144 LOGICAL UPPER, LQUERY
145 INTEGER MINSIZE, NBMAX
150 EXTERNAL lsame, ilaenv
160 upper = lsame( uplo,
'U' )
161 lquery = ( lwork.EQ.-1 )
163 nbmax = ilaenv( 1,
'ZSYTRI2', uplo, n, -1, -1, -1 )
164 IF ( nbmax .GE. n )
THEN 167 minsize = (n+nbmax+1)*(nbmax+3)
170 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN 172 ELSE IF( n.LT.0 )
THEN 174 ELSE IF( lda.LT.max( 1, n ) )
THEN 176 ELSE IF (lwork .LT. minsize .AND. .NOT.lquery )
THEN 184 CALL xerbla(
'ZSYTRI2', -info )
186 ELSE IF( lquery )
THEN 193 IF( nbmax .GE. n )
THEN 194 CALL zsytri( uplo, n, a, lda, ipiv, work, info )
196 CALL zsytri2x( uplo, n, a, lda, ipiv, work, nbmax, info )
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zsytri(UPLO, N, A, LDA, IPIV, WORK, INFO)
ZSYTRI
subroutine zsytri2(UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
ZSYTRI2
subroutine zsytri2x(UPLO, N, A, LDA, IPIV, WORK, NB, INFO)
ZSYTRI2X