MatrixStorage
The matrix storages koblas itself defines, DenseMatrix and SparseMatrix.
Inheritors
Properties
Functions
gemvInto with alpha = 1, beta = 0, so destination receives A * x.
y = alpha * A * x + beta * y (BLAS dgemv) into destination, for any Matrix against any Vector. beta == 0.0 overwrites destination without reading it, so a destination left holding NaN still yields a clean product.
Matrix 1-norm, the maximum absolute column sum (LAPACK dlange with norm 1). This is the anorm rcond expects, computed before the matrix is factored.
Frobenius norm (LAPACK dlange with norm F). Rescales like norm2 against overflow and underflow.
Matrix infinity-norm, the maximum absolute row sum (LAPACK dlange with norm I). A NaN carries through as it does in norm1.
Scale column j by d(j) in place for dense or sparse storage: the product A * D.
Scale row i by d(i) in place for dense or sparse storage: the product D * A.
Materialise into a fresh Array<DoubleArray> of rows, independent of the internal storage.
B = alpha · op(T) · B, or B = alpha · B · op(T) when right (BLAS dtrmm).
Multiply x = op(T) · x in place (BLAS dtrmv) for dense or sparse storage.
B = alpha · op(T)⁻¹ · B, or B = alpha · B · op(T)⁻¹ when right (BLAS dtrsm); see DenseBlas.trsm and SparseBlas.trsm. Reads only the triangle lower selects, and a singular triangle yields infinities or NaNs.
Solve op(T) · x = b in place (BLAS dtrsv) for dense or sparse storage; see DenseBlas.trsv and SparseBlas.trsv. Reads only the triangle lower selects, and does not check the diagonal, so a singular triangle yields infinities or NaNs.