138 SUBROUTINE ztrtrs( UPLO, TRANS, DIAG, N, NRHS, A, LDA, B, LDB,
146 CHARACTER DIAG, TRANS, UPLO
147 INTEGER INFO, LDA, LDB, N, NRHS
150 COMPLEX*16 A( LDA, * ), B( LDB, * )
157 parameter( zero = ( 0.0d+0, 0.0d+0 ),
158 $ one = ( 1.0d+0, 0.0d+0 ) )
178 nounit = lsame( diag,
'N' )
179 IF( .NOT.lsame( uplo,
'U' ) .AND. .NOT.lsame( uplo,
'L' ) )
THEN
181 ELSE IF( .NOT.lsame( trans,
'N' ) .AND. .NOT.
182 $ lsame( trans,
'T' ) .AND. .NOT.lsame( trans,
'C' ) )
THEN
184 ELSE IF( .NOT.nounit .AND. .NOT.lsame( diag,
'U' ) )
THEN
186 ELSE IF( n.LT.0 )
THEN
188 ELSE IF( nrhs.LT.0 )
THEN
190 ELSE IF( lda.LT.max( 1, n ) )
THEN
192 ELSE IF( ldb.LT.max( 1, n ) )
THEN
196 CALL xerbla(
'ZTRTRS', -info )
209 IF( a( info, info ).EQ.zero )
217 CALL ztrsm(
'Left', uplo, trans, diag, n, nrhs, one, a, lda, b,
subroutine xerbla(srname, info)
subroutine ztrsm(side, uplo, transa, diag, m, n, alpha, a, lda, b, ldb)
ZTRSM
subroutine ztrtrs(uplo, trans, diag, n, nrhs, a, lda, b, ldb, info)
ZTRTRS