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)
XERBLA
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