Module sparse

Source
Expand description

Sparse matrix data structures.

Most sparse matrix algorithms accept matrices in sparse column-oriented format. This format represents each column of the matrix by storing the row indices of its non-zero elements, as well as their values.

The indices and the values are each stored in a contiguous slice (or group of slices for arbitrary values). In order to specify where each column starts and ends, a slice of size ncols + 1 stores the start of each column, with the last element being equal to the total number of non-zeros (or the capacity in uncompressed mode).

§Example

Consider the 4-by-5 matrix:

10.0  0.0  12.0  -1.0  13.0
 0.0  0.0  25.0  -2.0   0.0
 1.0  0.0   0.0   0.0   0.0
 4.0  0.0   0.0   0.0   5.0

The matrix is stored as follows:

column pointers:  0 |  3 |  3 |  5 |  7 |  9

row indices:    0 |    2 |    3 |    0 |    1 |    0 |    1 |    0 |    3
values     : 10.0 |  1.0 |  4.0 | 12.0 | 25.0 | -1.0 | -2.0 | 13.0 |  5.0

Re-exports§

pub use permutation::Index;
pub use permutation::SignedIndex;

Modules§

mul
Sparse matrix multiplication.
ops
Arithmetic and generic binary/ternary operations.
util
Useful sparse matrix primitives.

Structs§

SymbolicSparseColMat
Symbolic structure of sparse matrix in column format, either compressed or uncompressed.
SymbolicSparseColMatRef
Symbolic view structure of sparse matrix in column format, either compressed or uncompressed.
SymbolicSparseRowMat
Symbolic structure of sparse matrix in row format, either compressed or uncompressed.
SymbolicSparseRowMatRef
Symbolic view structure of sparse matrix in row format, either compressed or uncompressed.
ValuesOrder
The order values should be read in, when constructing/filling from indices and values.

Enums§

CreationError
Errors that can occur in sparse algorithms.
FillMode
Whether the filled values should replace the current matrix values or be added to them.

Type Aliases§

SparseColMat
Sparse matrix in column-major format, either compressed or uncompressed.
SparseColMatMut
Sparse matrix mutable view in column-major format, either compressed or uncompressed.
SparseColMatRef
Sparse matrix view in column-major format, either compressed or uncompressed.
SparseRowMat
Sparse matrix in row-major format, either compressed or uncompressed.
SparseRowMatMut
Sparse matrix mutable view in row-major format, either compressed or uncompressed.
SparseRowMatRef
Sparse matrix view in row-major format, either compressed or uncompressed.