koblas

sparse

SparseBlas provides portable CSC matrix-vector and matrix-matrix products, symmetric/rank-k operations, triangular multiply/solve, scaled addition and transpose, over the engine's Level 1 kernels.

Stored zeros participate, cancellation retains an entry, and an absent position is never evaluated. Fresh results own their arrays with ascending row indices. Mutable scratch belongs to each invocation.

SparseKernels supplies allocation-free indexed arithmetic over validated caller-owned windows. Reductions admit repeated/unsorted support with contribution semantics; indexed mutations require sorted unique destinations. SparseKernels.dotColumn reads a selected CSC column against a dense array, reusing the matrix's validated support without extracting a vector or rescanning indices. Coefficient updates remain visible on every call.

SparsePrimitives provides stateless arithmetic over caller-owned support, marks, accumulators, diagnostics and output buffers. Pivot selection, permutations, dropping policies, factors and solver state belong to the consumer. Empty masked reductions return the identity and report no position.

Types

Link copied to clipboard
interface SparseBlas

Sparse Levels 2 and 3 over validated CSC storage, in portable Kotlin.

Link copied to clipboard
interface SparseKernels

Sparse vector and indexed-slice numerical kernels selected by a com.eignex.koblas.KoblasEngine.

Link copied to clipboard

The generic sparse primitives, over storage the caller owns and keeps between calls.