|
gslmm::qr_decomposition_pivot< double > Struct Template Reference |
Public Types | |
typedef vector< double > | vector_type |
typedef matrix< double > | matrix_type |
typedef matrix_type::value_type | value_type |
typedef matrix_type::element_type | element_type |
Public Member Functions | |
qr_decomposition_pivot (const matrix_type &m, bool unpack=false) | |
virtual bool | solve (const vector_type &b, vector_type &x) const |
virtual bool | solve (vector_type &x) const |
virtual bool | r_solve (const vector_type &b, vector_type &x) const |
virtual bool | r_solve (vector_type &x) const |
virtual bool | qr_solve (const vector_type &b, vector_type &x) const |
virtual bool | update (const vector_type &w, const vector_type &v) |
virtual int | sign () const |
virtual const permutation & | p () const |
Private Types | |
typedef matrix_type::data_type | data_type |
Private Member Functions | |
bool | solve (const vector_type &, vector_type &, vector_type &) const |
bool | qt_multiply (vector_type &) |
bool | q_multiply (vector_type &) |
Private Attributes | |
vector_type | _n |
permutation | _p |
int | _sign |
|
The low level matrix type.
Reimplemented from gslmm::qr_decomposition< double >. |
|
The element type.
Reimplemented from gslmm::qr_decomposition< double >. |
|
The matrix type.
Reimplemented from gslmm::qr_decomposition< double >. |
|
The element type.
Reimplemented from gslmm::qr_decomposition< double >. |
|
The vector type.
Reimplemented from gslmm::qr_decomposition< double >. |
|
Create an QR decomposition of the input matrix m. Factorise a general matrix into
where is orthogonal () and is upper triangular (). When is rank deficient, , then the permutation is used to ensure that the lower rows of are zero and the first columns of form an orthonormal basis for . is stored as a packed set of Householder transformations in the strict lower triangular part of the input matrix. is stored in the diagonal and upper triangle of the input matrix. Column of is column of the identity matrix, where . The sign of the permutation is where is the number of interchanges in . The full matrix for can be obtained as the product
where and
and where is a Householder vector
This storage scheme is the same as in LAPACK.
|
|
|
|
Hide base classes' member function.
|
|
This function solves the system for . It can be used when the QR decomposition of a matrix is wanted in unpacked form as
Reimplemented from gslmm::qr_decomposition< double >. |
|
Hide base classes' member function.
|
|
This function solves the triangular system for in-place. On input should contain the right-hand side and is replaced by the solution on output. This member function can be used only if the decompososition is stored in packed ().
Reimplemented from gslmm::qr_decomposition< double >. |
|
This function solves the triangular system for . This member function can be used only if the decompososition is stored in packed ().
Reimplemented from gslmm::qr_decomposition< double >. |
|
|
|
This member function solve the system using the QR decomposition of . This member function can be used only if the decompososition is stored in packed ().
Reimplemented from gslmm::qr_decomposition< double >. |
|
This member function solve the system using the decomposition of . This member function can be used regardless of whether the decompososition is stored in packed () or unpacked () form.
Reimplemented from gslmm::qr_decomposition< double >. |
|
Hide base classes' member function.
Reimplemented from gslmm::qr_decomposition< double >. |
|
This function performs a rank-1 update of the decomposition (). The update is given by
where the output matrices and are also orthogonal and right triangular. Update a factorisation for , ,
where Algorithm from Golub and Van Loan, "Matrix Computations", Section 12.5 (Updating Matrix Factorizations, Rank-One Changes) Reimplemented from gslmm::qr_decomposition< double >. |
|
The of the QR decomposition.
|
|
The permutation .
|
|
Sign of permutation.
|
Top of page | Last update Tue May 9 10:11:31 2006 |
Christian
Holm |
Created by DoxyGen 1.4.6 |