koblas

F64DenseMatrix

@Serializable
@SerialName(value = "F64DenseMatrix")
class F64DenseMatrix : F64MatrixView(source)

Types

Link copied to clipboard
object Companion

Factories for dense matrices.

Properties

cols

open override val cols: Int(source)

data

rows

open override val rows: Int(source)

Functions

equals

open operator override fun equals(other: Any?): Boolean(source)

get

open operator override fun get(i: Int, j: Int): Double(source)

The entry at row (i), column (j). Throws IndexOutOfBoundsException outside the shape, whatever the storage.

hashCode

open override fun hashCode(): Int(source)

set

operator fun set(i: Int, j: Int, v: Double)(source)

Writes (v) at row (i), column (j).

toArray

open override fun toArray(): Array<DoubleArray>(source)

Materialise into a fresh Array<DoubleArray> of rows, independent of the internal storage.

toString

open override fun toString(): String(source)
Link copied to clipboard
fun F64DenseMatrix.cholesky(policy: CholeskyPolicy = CholeskyPolicy.Strict, uplo: Uplo = Uplo.FULL): F64CholeskyDecomposition

Cholesky factorization A = L·Lᵀ with the active backend (koblas). Uplo.FULL checks that both triangles agree, while Uplo.LOWER or Uplo.UPPER names the authoritative triangle without checking the other. A non-positive pivot throws NotPositiveDefinite unless policy regularizes.

Link copied to clipboard

Column j as a fresh vector, copied rather than viewed.

Link copied to clipboard

Rank-one update A = A + alpha * x * yT (BLAS dger) in place. Subtract by passing alpha = -1.0.

Link copied to clipboard
fun F64DenseMatrix.ldl(workspace: Workspace? = null, uplo: Uplo = Uplo.FULL): F64LdlDecomposition

Symmetric indefinite factorization A = L·D·Lᵀ with the active backend. Uplo.FULL checks that both triangles agree; Uplo.LOWER or Uplo.UPPER selects one triangle without checking the other.

Link copied to clipboard

LU-factorize this square matrix with the active backend (koblas); see F64Decompositions.factor.

Link copied to clipboard

A - B, allocating. axpy with alpha = -1.0 accumulates into an existing operand.

Link copied to clipboard

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.

Link copied to clipboard

Frobenius norm (LAPACK dlange with norm F). Rescales like norm2 against overflow and underflow.

Link copied to clipboard
fun F64DenseMatrix.normInf(workspace: Workspace? = null): Double

Matrix infinity-norm, the maximum absolute row sum (LAPACK dlange with norm I).

Link copied to clipboard

A + B, allocating. axpy accumulates into an existing operand.

Link copied to clipboard

QR factorization A = Q·R with the active backend; see F64Decompositions.qr.

Link copied to clipboard
fun F64DenseMatrix.qrPivoted(tolerance: Double = AUTOMATIC_RANK_TOLERANCE, workspace: Workspace? = null): F64PivotedQrDecomposition

QR with column pivoting, A·P = Q·R, with the active backend; see F64Decompositions.qrPivoted.

Link copied to clipboard

Row i as a fresh vector, gathered across the backing. Prefer column where the algorithm allows.

Link copied to clipboard

Scale column j by d(j) in place, the product A * D for the diagonal D with entries d(j).

Link copied to clipboard

Scale row i by d(i) in place, the product D * A for the diagonal D with entries d(i).

Link copied to clipboard
fun F64DenseMatrix.syr(alpha: Double, x: F64VectorLike, uplo: Uplo = Uplo.FULL)

Symmetric rank-1 update A += alpha * x * xT (BLAS dsyr) in place. See F64Blas.syr.

Link copied to clipboard
fun F64DenseMatrix.syr2(alpha: Double, x: F64VectorLike, y: F64VectorLike, uplo: Uplo = Uplo.FULL)

Symmetric rank-2 update A += alpha * (x * yT + y * xT) (BLAS dsyr2) in place. See F64Blas.syr2.

Link copied to clipboard

A * B (BLAS dgemm), allocating. gemm accumulates into an existing C instead.

alpha * A, allocating. scale multiplies in place.

Matrix-vector product into a fresh dense result for any F64MatrixLike against any F64VectorLike. gemv provide transpose and destination-buffer variants.

Link copied to clipboard

Fresh transposed matrix. For products, prefer the transpose flags on gemv and gemm, which read the original storage without copying.

Link copied to clipboard

-A, allocating.