162 SUBROUTINE ssysv_aa( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
172 INTEGER INFO, LDA, LDB, LWORK, N, NRHS
176 REAL A( lda, * ), B( ldb, * ), WORK( * )
183 INTEGER LWKOPT, LWKOPT_SYTRF, LWKOPT_SYTRS
200 lquery = ( lwork.EQ.-1 )
201 IF( .NOT.lsame( uplo,
'U' ) .AND. .NOT.lsame( uplo,
'L' ) )
THEN
203 ELSE IF( n.LT.0 )
THEN
205 ELSE IF( nrhs.LT.0 )
THEN
207 ELSE IF( lda.LT.max( 1, n ) )
THEN
209 ELSE IF( ldb.LT.max( 1, n ) )
THEN
211 ELSE IF( lwork.LT.max(2*n, 3*n-2) .AND. .NOT.lquery )
THEN
216 CALL ssytrf_aa( uplo, n, a, lda, ipiv, work, -1, info )
217 lwkopt_sytrf = int( work(1) )
218 CALL ssytrs_aa( uplo, n, nrhs, a, lda, ipiv, b, ldb, work,
220 lwkopt_sytrs = int( work(1) )
221 lwkopt = max( lwkopt_sytrf, lwkopt_sytrs )
223 IF( lwork.LT.lwkopt .AND. .NOT.lquery )
THEN
229 CALL xerbla(
'SSYSV_AA', -info )
231 ELSE IF( lquery )
THEN
237 CALL ssytrf_aa( uplo, n, a, lda, ipiv, work, lwork, info )
242 CALL ssytrs_aa( uplo, n, nrhs, a, lda, ipiv, b, ldb, work,
subroutine ssytrf_aa(UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
SSYTRF_AA
subroutine ssytrs2(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, INFO)
SSYTRS2
subroutine ssytrs(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, INFO)
SSYTRS
subroutine ssytrf(UPLO, N, A, LDA, IPIV, WORK, LWORK, INFO)
SSYTRF
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine ssysv_aa(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, LWORK, INFO)
SSYSV_AA computes the solution to system of linear equations A * X = B for SY matrices ...
subroutine ssytrs_aa(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, LWORK, INFO)
SSYTRS_AA