What you need to know to use these subprograms

XYYYSM (TRANSA, M, N, UNITD, DV, ALPHA, args(A), B, LDB, BETA, C, LDC, WORK, LWORK)

• Block entry solution of triangular system:

XYYYSM (TRANSA, MB, N, UNITD, DV, ALPHA, args(A), B, BLDB, BETA, C, BLDC, WORK, LWORK)

The general order of arguments is:

1.Arguments specifying options.

2.Arguments specifying problem dimensions.

3.Input scalar associated with input matrices.

4.Description of sparse input matrices (See “Order of arguments for args(A)” on page 440).

5.Description of dense input matrices.

6.Input scalar associated with input-output matrix.

7.Description of input-output matrix.

8.Workspace.

9.Length of workspace.

Common arguments

The argument TRANSA is an integer argument. The possible values are:

TRANSA - Indicates how to operate with the sparse matrix.

0 - Operate with the matrix (No transpose).

1 - Operate with the transpose of the matrix.

2 - Operate with the conjugate transpose of the matrix.

TRANSA=2 is equivalent to TRANSA=1 if the matrix is real.

The argument M is the number of rows in the matrix C, N is the number of columns in C, and K is the number of rows in B. M and K are the row and column dimensions of A, respectively, if TRANSA=0 or the column and row

dimensions of AT or A* if TRANSA=1 or 2.

If A is a constant block entry matrix, then M=MBxLB and K=KBxLB are the row and column dimensions of A, respectively. Here, LB is the block entry dimension given by args(A).

For the block entry data structures, the argument MB is the number of block rows in the matrix C, and KB is the number of block rows in B. MB and KB are

438HP MLIB User’s Guide