140 SUBROUTINE ctrtrs( UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB,
149 CHARACTER DIAG, TRANS, UPLO
150 INTEGER INFO, LDA, LDB, N, NRHS
153 COMPLEX A( lda, * ), B( ldb, * )
160 parameter ( zero = ( 0.0e+0, 0.0e+0 ),
161 $ one = ( 1.0e+0, 0.0e+0 ) )
181 nounit = lsame( diag,
'N' )
182 IF( .NOT.lsame( uplo,
'U' ) .AND. .NOT.lsame( uplo,
'L' ) )
THEN
184 ELSE IF( .NOT.lsame( trans,
'N' ) .AND. .NOT.
185 $ lsame( trans,
'T' ) .AND. .NOT.lsame( trans,
'C' ) )
THEN
187 ELSE IF( .NOT.nounit .AND. .NOT.lsame( diag,
'U' ) )
THEN
189 ELSE IF( n.LT.0 )
THEN
191 ELSE IF( nrhs.LT.0 )
THEN
193 ELSE IF( lda.LT.max( 1, n ) )
THEN
195 ELSE IF( ldb.LT.max( 1, n ) )
THEN
199 CALL xerbla(
'CTRTRS', -info )
212 IF( a( info, info ).EQ.zero )
220 CALL ctrsm(
'Left', uplo, trans, diag, n, nrhs, one, a, lda, b,
subroutine ctrtrs(UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB, INFO)
CTRTRS
subroutine ctrsm(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B, LDB)
CTRSM
subroutine xerbla(SRNAME, INFO)
XERBLA