koblas

PreparedSparseMatrix

An immutable snapshot of one sparse matrix, prepared for repeated products.

Changes to the source matrix after preparation do not affect this snapshot. Create one with SparseMatrix.prepare.

Properties

cols

Columns in the prepared sparse matrix.

nnz

val nnz: Int(source)

Stored entries copied into the snapshot.

rows

Rows in the prepared sparse matrix.

Functions

gemm

fun gemm(alpha: Double, transposeA: Boolean, b: DenseMatrix, beta: Double, c: DenseMatrix, workspace: Workspace? = null)(source)

C = alpha · op(A) · B + beta · C against the prepared A.


fun gemm(alpha: Double, transposeA: Boolean, b: DenseMatrix, transposeB: Boolean, beta: Double, c: DenseMatrix, right: Boolean, workspace: Workspace? = null)(source)

Full sparse-dense product contract, including dense transpose and sparse side selection.


A · B against the prepared A, into a fresh sparse matrix.


fun gemm(alpha: Double, transposeA: Boolean, b: SparseMatrix, transposeB: Boolean): SparseMatrix(source)

Prepared sparse-result product with scaling and transpose controls.


fun gemm(alpha: Double, transposeA: Boolean, b: SparseMatrix, transposeB: Boolean, beta: Double, c: DenseMatrix, workspace: Workspace? = null)(source)

Prepared direct sparse-sparse-to-dense product.

gemv

fun gemv(alpha: Double, x: DoubleArray, beta: Double, y: DoubleArray, transpose: Boolean = false)(source)

In-place y = alpha · op(A) · x + beta · y against the prepared A.

symm

fun symm(alpha: Double, b: DenseMatrix, beta: Double, c: DenseMatrix, lower: Boolean = true, right: Boolean = false, workspace: Workspace? = null)(source)

Prepared selected-triangle symmetric matrix-matrix product; semantics match SparseBlas.symm.

symv

fun symv(alpha: Double, x: DoubleArray, beta: Double, y: DoubleArray, lower: Boolean = true)(source)

Prepared selected-triangle symmetric matrix-vector product; semantics match SparseBlas.symv.