210      INTEGER            INFO, LDA, LDB, LWORK, N, NRHS
 
  214      DOUBLE PRECISION   A( LDA, * ), B( LDB, * ), WORK( * )
 
  238      lquery = ( lwork.EQ.-1 )
 
  239      IF( .NOT.lsame( uplo, 
'U' ) .AND.
 
  240     $    .NOT.lsame( uplo, 
'L' ) ) 
THEN 
  242      ELSE IF( n.LT.0 ) 
THEN 
  244      ELSE IF( nrhs.LT.0 ) 
THEN 
  246      ELSE IF( lda.LT.max( 1, n ) ) 
THEN 
  248      ELSE IF( ldb.LT.max( 1, n ) ) 
THEN 
  250      ELSE IF( lwork.LT.1 .AND. .NOT.lquery ) 
THEN 
  258            CALL dsytrf_rook( uplo, n, a, lda, ipiv, work, -1, info )
 
  259            lwkopt = int( work( 1 ) )
 
  265         CALL xerbla( 
'DSYSV_ROOK ', -info )
 
  267      ELSE IF( lquery ) 
THEN 
  273      CALL dsytrf_rook( uplo, n, a, lda, ipiv, work, lwork, info )
 
  280         CALL dsytrs_rook( uplo, n, nrhs, a, lda, ipiv, b, ldb,
 
 
subroutine dsysv_rook(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
DSYSV_ROOK computes the solution to system of linear equations A * X = B for SY matrices
subroutine dsytrf_rook(uplo, n, a, lda, ipiv, work, lwork, info)
DSYTRF_ROOK
subroutine dsytrs_rook(uplo, n, nrhs, a, lda, ipiv, b, ldb, info)
DSYTRS_ROOK