138 SUBROUTINE strtrs( UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB,
146 CHARACTER DIAG, TRANS, UPLO
147 INTEGER INFO, LDA, LDB, N, NRHS
150 REAL A( lda, * ), B( ldb, * )
157 parameter( zero = 0.0e+0, one = 1.0e+0 )
177 nounit = lsame( diag,
'N' )
178 IF( .NOT.lsame( uplo,
'U' ) .AND. .NOT.lsame( uplo,
'L' ) )
THEN 180 ELSE IF( .NOT.lsame( trans,
'N' ) .AND. .NOT.
181 $ lsame( trans,
'T' ) .AND. .NOT.lsame( trans,
'C' ) )
THEN 183 ELSE IF( .NOT.nounit .AND. .NOT.lsame( diag,
'U' ) )
THEN 185 ELSE IF( n.LT.0 )
THEN 187 ELSE IF( nrhs.LT.0 )
THEN 189 ELSE IF( lda.LT.max( 1, n ) )
THEN 191 ELSE IF( ldb.LT.max( 1, n ) )
THEN 195 CALL xerbla(
'STRTRS', -info )
208 IF( a( info, info ).EQ.zero )
216 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