pub fn numeric<Iptr: SpIndex, I: SpIndex, A, B, N: MulAcc<A, B> + Zero>(
a: CsMatViewI<'_, A, I, Iptr>,
b: CsMatViewI<'_, B, I, Iptr>,
c: CsMatViewMutI<'_, N, I, Iptr>,
tmp: &mut [N]
)
Expand description
Numeric part of the matrix product C = A * B with A, B and C stored in the CSR matrix format.
This function is low-level, and supports execution on chunks of the
rows of C and A. To use the chunks, split the indptrs of A and C and split
c_indices
and c_data
to only contain the elements referenced in
c_indptr
. This function will take care of using the correct offset
inside the sliced indices and data.
Panics
tmp.len()
should be equal to the maximum dimension of the inputs.
The matrices should be in proper CSR structure, and their dimensions should be compatible. Failures to do so may result in out of bounds errors (though some cases might go unnoticed).
The parts for the C matrix should come from the symbolic
function.