What you need to know to use these subprograms

SM arguments

The argument UNITD is an integer argument indicating whether or not the diagonal matrix D is unitary. The possible values for UNITD are:

1.Unitary diagonal matrix, i.e., D is the identity. In this case the argument DV is ignored.

2.Scale on the left (row scaling).

3.Scale on the right (column scaling).

The argument DV is an array containing the diagonal entries of the (block) diagonal matrix D.

Order of arguments for args(A)

The list of arguments describing the sparse matrix A (denoted by args(A)) is specific to each storage format. The general order of args(A) is:

1.Descriptor array, DESCRA.

2.Array containing the nonzero values (entries) of input matrix.

3.First dimension of values array (if shape of this array differs from index arrays).

4.Array(s) containing indices corresponding to the entries of input matrix. If more than one index array:

a.Arrays ordered in decreasing length.

b.Arrays of same length are ordered with row indices first.

5.Length or first dimension of value/index arrays.

6.Array(s) containing pointers. If more than one pointer array:

a.Arrays ordered in decreasing length.

b.Arrays of same length are ordered with row pointers first, column pointers next, and diagonal pointers last.

7.Length or first dimension of pointer arrays.

8.Array(s) representing left and/or right permutations of A. If more than one permutation array order left permutation array first.

9.Block entry dimension, LB.

440HP MLIB User’s Guide