140 SUBROUTINE strtrs( UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB,
149 CHARACTER DIAG, TRANS, UPLO
150 INTEGER INFO, LDA, LDB, N, NRHS
153 REAL A( lda, * ), B( ldb, * )
160 parameter( zero = 0.0e+0, one = 1.0e+0 )
180 nounit = lsame( diag,
'N' )
181 IF( .NOT.lsame( uplo,
'U' ) .AND. .NOT.lsame( uplo,
'L' ) )
THEN 183 ELSE IF( .NOT.lsame( trans,
'N' ) .AND. .NOT.
184 $ lsame( trans,
'T' ) .AND. .NOT.lsame( trans,
'C' ) )
THEN 186 ELSE IF( .NOT.nounit .AND. .NOT.lsame( diag,
'U' ) )
THEN 188 ELSE IF( n.LT.0 )
THEN 190 ELSE IF( nrhs.LT.0 )
THEN 192 ELSE IF( lda.LT.max( 1, n ) )
THEN 194 ELSE IF( ldb.LT.max( 1, n ) )
THEN 198 CALL xerbla(
'STRTRS', -info )
211 IF( a( info, info ).EQ.zero )
219 CALL strsm(
'Left', uplo, trans, diag, n, nrhs, one, a, lda, b,
subroutine strsm(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B, LDB)
STRSM
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine strtrs(UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB, INFO)
STRTRS