164 SUBROUTINE zhesv_aa( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
174 INTEGER INFO, LDA, LDB, LWORK, N, NRHS
178 COMPLEX*16 A( lda, * ), B( ldb, * ), WORK( * )
185 INTEGER LWKOPT, LWKOPT_HETRF, LWKOPT_HETRS
190 EXTERNAL lsame, ilaenv
203 lquery = ( lwork.EQ.-1 )
204 IF( .NOT.lsame( uplo,
'U' ) .AND. .NOT.lsame( uplo,
'L' ) )
THEN
206 ELSE IF( n.LT.0 )
THEN
208 ELSE IF( nrhs.LT.0 )
THEN
210 ELSE IF( lda.LT.max( 1, n ) )
THEN
212 ELSE IF( ldb.LT.max( 1, n ) )
THEN
217 CALL zhetrf_aa( uplo, n, a, lda, ipiv, work, -1, info )
218 lwkopt_hetrf = int( work(1) )
219 CALL zhetrs_aa( uplo, n, nrhs, a, lda, ipiv, b, ldb, work,
221 lwkopt_hetrs = int( work(1) )
222 lwkopt = max( lwkopt_hetrf, lwkopt_hetrs )
224 IF( lwork.LT.lwkopt .AND. .NOT.lquery )
THEN
230 CALL xerbla(
'ZHESV_AA ', -info )
232 ELSE IF( lquery )
THEN
238 CALL zhetrf_aa( uplo, n, a, lda, ipiv, work, lwork, info )
243 CALL zhetrs_aa( uplo, n, nrhs, a, lda, ipiv, b, ldb, work,
subroutine zhetrs(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, INFO)
ZHETRS
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zhetrs_aa(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, LWORK, INFO)
ZHETRS_AA
subroutine zhetrf(UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
ZHETRF
subroutine zhesv_aa(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, LWORK, INFO)
ZHESV_AA computes the solution to system of linear equations A * X = B for HE matrices ...
subroutine zhetrs2(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, INFO)
ZHETRS2
subroutine zhetrf_aa(UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
ZHETRF_AA