Class: QR

LinearAlgebra. QR


new QR()

This class represents a QR factorization of a rectangular SparseMatrix.
The factorization is computed on the first call to solve, and is reused in
subsequent calls to solve (e.g. when only the right hand side b of the linear
system Ax = b changes) unless the sparse matrix itself is altered through
operations such as *=, += and -=. Do not use the constructor to initialize
this class, instead access the QR factorization of a sparse matrix directly
from the matrix itself.

Example
// solve the linear system Ax = b, where A is a rectangular sparse matrix
let A = SparseMatrix.identity(5, 5);
let b = DenseMatrix.ones(5, 1);

let qr = A.qr();
let x = qr.solve(b);

b.scaleBy(5);
x = qr.solve(b); // factorization is reused

Methods


solve(b)

Solves the linear system Ax = b, where A is a rectangular sparse matrix.

Parameters:
Name Type Description
b module:LinearAlgebra.DenseMatrix

The dense right hand side of the linear system Ax = b.

Returns:
Type
module:LinearAlgebra.DenseMatrix