Class: ComplexQR

LinearAlgebra. ComplexQR


new ComplexQR()

This class represents a complex QR factorization of a rectangular ComplexSparseMatrix.
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 complex sparse matrix itself is altered
through operations such as *=, += and -=. Do not use the constructor to initialize
this class, instead access the complex QR factorization of a complex sparse
matrix directly from the matrix itself.

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

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

b.scaleBy(new Complex(5, 0));
x = qr.solve(b); // factorization is reused

Methods


solve(b)

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

Parameters:
Name Type Description
b module:LinearAlgebra.ComplexDenseMatrix

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

Returns:
Type
module:LinearAlgebra.ComplexDenseMatrix