STRSM/DTRSM/CTRSM/ZTRSM

 

Solve triangular systems

 

a

Array whose upper or lower triangle, as specified by

 

 

uplo, contains the upper- or lower-triangular matrix A,

 

 

whose size is indicated by side:

 

 

’L’ or ’l’

A is m-by-m

 

 

’R’ or ’r’

A is n-by-n

 

 

The other triangle of a is not referenced. Not used as

 

 

input if alpha = 0.

 

lda

The leading dimension of array a as declared in the

 

 

calling program unit, with lda ≥ max (the number of

 

 

rows of A,1).

 

 

b

Array containing the m-by-nmatrix B. Not used as

 

 

input if alpha = 0.

 

ldb

The leading dimension of array b as declared in the

 

 

calling program unit, with ldb ≥ max(m,1).

Output

b

The indicated matrix solution replaces the input.

Notes

These subprograms conform to specifications of the Level 3 BLAS.

 

If an error in the arguments is detected, the subprograms call error handler

 

XERBLA, which writes an error message onto the standard error file and

 

terminates execution. The standard version of XERBLA (refer to the end of this

 

chapter) can be replaced with a user-supplied version to change the error

 

procedure. Error conditions are:

 

side ≠ ’L’ or ’l’ or ’R’ or ’r’ uplo ≠ ’L’ or ’l’ or ’U’ or ’u’

transa ≠ ’N’ or ’n’ or ’T’ or ’t’ or ’C’ or ’c’ diag ≠ ’N’ or ’n’ or ’U’ or ’u’

m < 0 n < 0

lda too small ldb < max(m,1)

Actual character arguments in a subroutine call can be longer than the corresponding dummy arguments. Therefore, readability of the CALL statement may be improved, for example, by coding the transa argument as ’NORMAL’ or ’NONTRANS’ for ’N’, ’TRANSPOSE’ for ’T’, or ’CTRANS’ for ’C’. Refer to “Example 2.”

330HP MLIB User’s Guide