packedToSp#

Purpose#

Creates a sparse matrix from a packed matrix of non-zero values and row and column indices.

Format#

y = packedToSp(r, c, p)#
Parameters:
  • r (scalar) – rows of output matrix.

  • c (scalar) – columns of output matrix.

  • p (Nx3 or Nx4 matrix) – contains non-zero values and row and column indices.

Returns:

y (RxC sparse matrix) – Sparse matrix from a packed matrix of non-zero values.

Examples#

// Declare 'y' to be a sparse matrix
sparse matrix y;

// Create a 15x10 matrix 'y' in which:
// y[2,4] = 1.1; y[5,1] = 2.3; y[8,9] = 3.4;
// y[13,5] = 4.2
// all other values in 'y' will be zeros
p = { 1.1 2 4, 2.3 5 1, 3.4 8 9, 4.2 13 5 };
y = packedToSp(15, 10, p);

After the code above, y is a sparse matrix, containing the following non-zero values:

Non-zero value     Index

    1.1            (2,4)
    2.3            (5,1)
    3.4            (8,9)
    4.2           (13,5)

Remarks#

If p is Nx3, y will be a real sparse matrix. Otherwise, if p is Nx4, y will be complex.

The format for p is as follows:

If p is Nx3:

Column 1

Column 2

Column 3

non-zero values

row indices

column indices

If p is Nx4:

Column 1

Column 2

Column 3

Column 4

real non-zero values

imaginary non-zero values

row indices

column indices

Note that spCreate() may be faster.

Since sparse matrices are strongly typed in GAUSS, y must be defined as a sparse matrix before the call to packedToSp().

See also

Functions spCreate(), denseToSp()