pub type SymbolicSparseColMatRef<'a, I, Rows = usize, Cols = usize> = SymbolicSparseColMat<Ref<'a, I, Rows, Cols>>;Expand description
symbolic view structure of sparse matrix in column format, either compressed or uncompressed
§invariants
-
nrows <= I::Signed::MAX(always checked) -
ncols <= I::Signed::MAX(always checked) -
col_ptrshas lengthncols + 1(always checked) -
col_ptrsis increasing -
col_ptrs[0]..col_ptrs[ncols]is a valid range in row_indices (always checked, assuming it’s increasing) -
if
nnz_per_colisnone, elements ofrow_indices[col_ptrs[j]..col_ptrs[j + 1]]are less thannrows -
nnz_per_col[j] <= col_ptrs[j+1] - col_ptrs[j] -
if
nnz_per_colissome(_), elements ofrow_indices[col_ptrs[j]..][..nnz_per_col[j]]are less thannrows
§soft invariants
- within each column, row indices are sorted in increasing order
§note
some algorithms allow working with matrices containing unsorted row indices per column
passing such a matrix to an algorithm that does not explicitly permit this is unspecified (though not undefined) behavior
Aliased Type§
#[repr(transparent)]pub struct SymbolicSparseColMatRef<'a, I, Rows = usize, Cols = usize>(pub Ref<'a, I, Rows, Cols>);Tuple Fields§
§0: Ref<'a, I, Rows, Cols>