140 SUBROUTINE ztrtrs( UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB,
149 CHARACTER DIAG, TRANS, UPLO
150 INTEGER INFO, LDA, LDB, N, NRHS
153 COMPLEX*16 A( lda, * ), B( ldb, * )
160 parameter ( zero = ( 0.0d+0, 0.0d+0 ),
161 $ one = ( 1.0d+0, 0.0d+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(
'ZTRTRS', -info )
212 IF( a( info, info ).EQ.zero )
220 CALL ztrsm(
'Left', uplo, trans, diag, n, nrhs, one, a, lda, b,
subroutine ztrtrs(UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB, INFO)
ZTRTRS
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine ztrsm(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B, LDB)
ZTRSM