Mercurial > hg > octave-nkf
diff liboctave/CmplxQR.h @ 7553:56be6f31dd4e
implementation of QR factorization updating
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Tue, 04 Mar 2008 21:47:11 -0500 |
parents | a1dbe9d80eee |
children | 40574114c514 |
line wrap: on
line diff
--- a/liboctave/CmplxQR.h +++ b/liboctave/CmplxQR.h @@ -27,8 +27,11 @@ #include <iostream> #include "CMatrix.h" +#include "CColVector.h" +#include "CRowVector.h" #include "dbleQR.h" + class OCTAVE_API ComplexQR @@ -39,6 +42,8 @@ ComplexQR (const ComplexMatrix&, QR::type = QR::std); + ComplexQR (const ComplexMatrix& q, const ComplexMatrix& r); + ComplexQR (const ComplexQR& a) : q (a.q), r (a.r) { } ComplexQR& operator = (const ComplexQR& a) @@ -59,6 +64,18 @@ ComplexMatrix R (void) const { return r; } + void update (const ComplexMatrix& u, const ComplexMatrix& v); + + void insert_col (const ComplexMatrix& u, octave_idx_type j); + + void delete_col (octave_idx_type j); + + void insert_row (const ComplexMatrix& u, octave_idx_type j); + + void delete_row (octave_idx_type j); + + void economize(); + friend std::ostream& operator << (std::ostream&, const ComplexQR&); protected: