169 SUBROUTINE chesv( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
178 INTEGER INFO, LDA, LDB, LWORK, N, NRHS
182 COMPLEX A( LDA, * ), B( LDB, * ), WORK( * )
194 EXTERNAL lsame, ilaenv
207 lquery = ( lwork.EQ.-1 )
208 IF( .NOT.lsame( uplo,
'U' ) .AND. .NOT.lsame( uplo
'L' ) )
THEN
210 ELSE IF( n.LT.0 )
THEN
212 ELSE IF( nrhs.LT.0 )
THEN
214 ELSE IF( lda.LT.
max( 1, n ) )
THEN
216 ELSE IF( ldb.LT.
max( 1, n ) )
THEN
218 ELSE IF( lwork.LT.1 .AND. .NOT.lquery )
THEN
226 nb = ilaenv( 1,
'CHETRF', uplo, n, -1, -1, -1 )
233 CALL xerbla(
'CHESV ', -info )
235 ELSE IF( lquery )
THEN
241 CALL chetrf( uplo, n, a, lda, ipiv, work, lwork, info )
246 IF ( lwork.LT.n )
THEN
250 CALL chetrs( uplo, n, nrhs, a, lda, ipiv, b, ldb, info )
256 CALL chetrs2( uplo,n,nrhs,a,lda,ipiv,b,ldb,work,info )
subroutine chetrs(uplo, n, nrhs, a, lda, ipiv, b, ldb, info)
CHETRS
subroutine chetrf(uplo, n, a, lda, ipiv, work, lwork, info)
CHETRF
subroutine chetrs2(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, info)
CHETRS2
subroutine chesv(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
CHESV computes the solution to system of linear equations A * X = B for HE matrices