128 SUBROUTINE csytri2( UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO )
137 INTEGER INFO, LDA, LWORK, N
141 COMPLEX A( lda, * ), WORK( * )
147 LOGICAL UPPER, LQUERY
148 INTEGER MINSIZE, NBMAX
153 EXTERNAL lsame, ilaenv
163 upper = lsame( uplo,
'U' )
164 lquery = ( lwork.EQ.-1 )
166 nbmax = ilaenv( 1,
'CSYTRF', uplo, n, -1, -1, -1 )
167 IF ( nbmax .GE. n )
THEN 170 minsize = (n+nbmax+1)*(nbmax+3)
173 IF( .NOT.upper .AND. .NOT.lsame( uplo,
'L' ) )
THEN 175 ELSE IF( n.LT.0 )
THEN 177 ELSE IF( lda.LT.max( 1, n ) )
THEN 179 ELSE IF (lwork .LT. minsize .AND. .NOT.lquery )
THEN 187 CALL xerbla(
'CSYTRI2', -info )
189 ELSE IF( lquery )
THEN 196 IF( nbmax .GE. n )
THEN 197 CALL csytri( uplo, n, a, lda, ipiv, work, info )
199 CALL csytri2x( uplo, n, a, lda, ipiv, work, nbmax, info )
subroutine csytri2x(UPLO, N, A, LDA, IPIV, WORK, NB, INFO)
CSYTRI2X
subroutine csytri(UPLO, N, A, LDA, IPIV, WORK, INFO)
CSYTRI
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine csytri2(UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
CSYTRI2