STRMM/DTRMM/CTRMM/ZTRMM

 

Triangular matrix-matrix multiply

Input

side

Specifies whether triangular matrix A is the left or

 

 

right matrix operand:

 

 

’L’ or ’l’

A is the left matrix operand: for

 

 

 

example, B ← αAB

 

 

’R’ or ’r’

A is the right matrix operand: for

 

 

 

example, B ← αBA

 

uplo

Upper/lower triangular option for A:

 

 

’L’ or ’l’

A is a lower-triangular matrix

 

 

’U’ or ’u’

A is an upper-triangular matrix

 

transa

Transposition option for A:

 

 

’N’ or ’n’

Use matrix A directly

 

 

’T’ or ’t’

Use AT, the transpose of A

 

 

’C’ or ’c’

Use A*, the conjugate transpose of A

 

 

In the real subprograms, ’C’ and ’c’ have the same

 

 

meaning as ’T’ and ’t’.

 

diag

Specifies whether the A matrix is unit triangular, that

 

 

is, aii =

1, or not:

 

 

’N’ or ’n’

The diagonal of A is stored in the

 

 

 

array

 

 

’U’ or ’u’

The diagonal of A consists of unstored

 

 

 

ones

 

 

When diag is supplied as ’U’ or ’u’, the diagonal

 

 

elements of A are not referenced.

 

m

Number of rows in matrix B, m ≥ 0. If m = 0, the

 

 

subprograms do not reference a or b.

 

n

Number of columns in matrix B, n ≥ 0. If n = 0, the

 

 

subprograms do not reference a or b.

 

alpha

The scalar α. If alpha = 0, the subprograms compute

 

 

B ← 0 without referencing a.

 

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.

320HP MLIB User’s Guide