Function csmatrix_vmult

Function Documentation

status_t csmatrix_vmult(const struct csmatrix *matrix, const struct darray *vector_in, struct darray *vector_out)

Multiply a sparse matrix with a vector.

The vector must also be compressed (i.e. you can do a dot product of the vector and the array storing the non-zero values in the matrix). The type of data stored in the vectors must be the same as that stored in the matrix.

Parameters:
  • matrix – The matrix handle.

  • vector_in – The vector to multiply with.

  • vector_out – The resulting vector. Must have same capacity as input vector.

Returns:

status_t.