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 ctrsm(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B, LDB)
CTRSM
subroutine ctrtrs(UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB, INFO)
CTRTRS
subroutine xerbla(SRNAME, INFO)
XERBLA