DriftCapture · function

cholesky

The lower triangle l with l · lᵀ = m, or false where m is not positive definite — which is how a caller learns that its normal equations are singular, rather than by finding a NaN later.

Explained in DriftCapture.

function cholesky(m: Float64Array, n: number, out: Float64Array): boolean
import { cholesky } from '@driftengine/capture';

Parameters

ParameterTypeDescription
mFloat64Array
nnumber
outFloat64Array

In depth

out may be m: only the lower triangle is read, each element before it is written, so a caller with one matrix to spare factors it in place. Zeroing the whole of out first would have erased the matrix in that case, which is a silent wrong answer rather than a refusal.