160 SUBROUTINE dsysv_aa( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
169 INTEGER INFO, LDA, LDB, LWORK, N, NRHS
173 DOUBLE PRECISION A( lda, * ), B( ldb, * ), WORK( * )
180 INTEGER LWKOPT, LWKOPT_SYTRF, LWKOPT_SYTRS
185 EXTERNAL ilaenv, lsame
198 lquery = ( lwork.EQ.-1 )
199 IF( .NOT.lsame( uplo,
'U' ) .AND. .NOT.lsame( uplo,
'L' ) )
THEN 201 ELSE IF( n.LT.0 )
THEN 203 ELSE IF( nrhs.LT.0 )
THEN 205 ELSE IF( lda.LT.max( 1, n ) )
THEN 207 ELSE IF( ldb.LT.max( 1, n ) )
THEN 209 ELSE IF( lwork.LT.max(2*n, 3*n-2) .AND. .NOT.lquery )
THEN 214 CALL dsytrf_aa( uplo, n, a, lda, ipiv, work, -1, info )
215 lwkopt_sytrf = int( work(1) )
216 CALL dsytrs_aa( uplo, n, nrhs, a, lda, ipiv, b, ldb, work,
218 lwkopt_sytrs = int( work(1) )
219 lwkopt = max( lwkopt_sytrf, lwkopt_sytrs )
224 CALL xerbla(
'DSYSV_AA ', -info )
226 ELSE IF( lquery )
THEN 232 CALL dsytrf_aa( uplo, n, a, lda, ipiv, work, lwork, info )
237 CALL dsytrs_aa( uplo, n, nrhs, a, lda, ipiv, b, ldb, work,
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine dsysv_aa(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, LWORK, INFO)
DSYSV_AA computes the solution to system of linear equations A * X = B for SY matrices ...
subroutine dsytrf_aa(UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
DSYTRF_AA
subroutine dsytrs_aa(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, LWORK, INFO)
DSYTRS_AA