204 SUBROUTINE dsysv_rook( UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK,
214 INTEGER info, lda, ldb, lwork, n, nrhs
218 DOUBLE PRECISION a( lda, * ),
b( ldb, * ), work( * )
242 lquery = ( lwork.EQ.-1 )
243 IF( .NOT.
lsame( uplo,
'U' ) .AND. .NOT.
lsame( uplo,
'L' ) )
THEN
245 ELSE IF( n.LT.0 )
THEN
247 ELSE IF( nrhs.LT.0 )
THEN
249 ELSE IF( lda.LT.max( 1, n ) )
THEN
251 ELSE IF( ldb.LT.max( 1, n ) )
THEN
253 ELSE IF( lwork.LT.1 .AND. .NOT.lquery )
THEN
261 CALL
dsytrf_rook( uplo, n, a, lda, ipiv, work, -1, info )
268 CALL
xerbla(
'DSYSV_ROOK ', -info )
270 ELSE IF( lquery )
THEN
276 CALL
dsytrf_rook( uplo, n, a, lda, ipiv, work, lwork, info )
283 CALL
dsytrs_rook( uplo, n, nrhs, a, lda, ipiv,
b, ldb, info )