|
| Qrd () |
|
template<class T > |
| Qrd (const MatrixBase< T > &a, Mode mode=Mode::reduced) |
| Calculate the QRD of matrix A. More...
|
|
template<class T > |
Qrd & | calc (const MatrixBase< T > &a, Mode mode=Mode::reduced) |
| Calculate the QRD of matrix A. More...
|
|
bool | isFullRank () const |
| Check if the decomposed matrix has full rank (ie. all vectors are linearly independent; no vector is a linear combination of others) More...
|
|
template<class B , class X > |
void | solve (const MatrixBase< B > &b, MatrixBase< X > &x) |
| Solve the linear system where A is the decomposed matrix. A and B row sizes must match. A must have full rank. More...
|
|
const Matrix & | q () const |
| Get Q of the decomposition. More...
|
|
const Matrix & | r () const |
| Get R of the decomposition. More...
|
|
const Matrix & | h () const |
| Get the Householder column vectors that define the reflections. H is a (m x n) lower trapazoidal matrix. More...
|
|
template<class Real>
class honey::Qrd< Real >
QR Decomposition. Can be used to solve least squares problems.
The reduced QRD of (m x n) matrix A with m >= n is: where Q is an orthogonal (m x n) matrix, and R is an upper triangular (n x n) matrix.
The full QRD is: where Q is (m x m) and 0 is (m-n x n).
Most linear systems do not require the full QRD to solve.
Complexity: