Mercurial > hg > octave-nkf
comparison liboctave/floatQR.h @ 8547:d66c9b6e506a
imported patch qrupdate.diff
author | Jaroslav Hajek <highegg@gmail.com> |
---|---|
date | Tue, 20 Jan 2009 21:16:42 +0100 |
parents | 39c1026191e9 |
children | a6edd5c23cb5 |
comparison
equal
deleted
inserted
replaced
8546:3d8a914c580e | 8547:d66c9b6e506a |
---|---|
1 /* | 1 /* |
2 | 2 |
3 Copyright (C) 1994, 1995, 1996, 1997, 2000, 2002, 2004, 2005, 2006, | 3 Copyright (C) 1994, 1995, 1996, 1997, 2000, 2002, 2004, 2005, 2006, |
4 2007 John W. Eaton | 4 2007 John W. Eaton |
5 Copyright (C) 2008, 2009 Jaroslav Hajek | |
5 | 6 |
6 This file is part of Octave. | 7 This file is part of Octave. |
7 | 8 |
8 Octave is free software; you can redistribute it and/or modify it | 9 Octave is free software; you can redistribute it and/or modify it |
9 under the terms of the GNU General Public License as published by the | 10 under the terms of the GNU General Public License as published by the |
18 You should have received a copy of the GNU General Public License | 19 You should have received a copy of the GNU General Public License |
19 along with Octave; see the file COPYING. If not, see | 20 along with Octave; see the file COPYING. If not, see |
20 <http://www.gnu.org/licenses/>. | 21 <http://www.gnu.org/licenses/>. |
21 | 22 |
22 */ | 23 */ |
23 | |
24 // updating/downdating by Jaroslav Hajek 2008 | |
25 | 24 |
26 #if !defined (octave_FloatQR_h) | 25 #if !defined (octave_FloatQR_h) |
27 #define octave_FloatQR_h 1 | 26 #define octave_FloatQR_h 1 |
28 | 27 |
29 #include <iostream> | 28 #include <iostream> |
63 | 62 |
64 FloatMatrix Q (void) const { return q; } | 63 FloatMatrix Q (void) const { return q; } |
65 | 64 |
66 FloatMatrix R (void) const { return r; } | 65 FloatMatrix R (void) const { return r; } |
67 | 66 |
67 #ifdef HAVE_QRUPDATE | |
68 | |
69 void update (const FloatColumnVector& u, const FloatColumnVector& v); | |
70 | |
68 void update (const FloatMatrix& u, const FloatMatrix& v); | 71 void update (const FloatMatrix& u, const FloatMatrix& v); |
69 | 72 |
70 void insert_col (const FloatMatrix& u, octave_idx_type j); | 73 void insert_col (const FloatColumnVector& u, octave_idx_type j); |
74 | |
75 void insert_col (const FloatMatrix& u, const Array<octave_idx_type>& j); | |
71 | 76 |
72 void delete_col (octave_idx_type j); | 77 void delete_col (octave_idx_type j); |
73 | 78 |
74 void insert_row (const FloatMatrix& u, octave_idx_type j); | 79 void delete_col (const Array<octave_idx_type>& j); |
80 | |
81 void insert_row (const FloatRowVector& u, octave_idx_type j); | |
75 | 82 |
76 void delete_row (octave_idx_type j); | 83 void delete_row (octave_idx_type j); |
77 | 84 |
78 void shift_cols (octave_idx_type i, octave_idx_type j); | 85 void shift_cols (octave_idx_type i, octave_idx_type j); |
79 | 86 |
80 void economize (void); | 87 #endif |
81 | 88 |
82 friend std::ostream& operator << (std::ostream&, const FloatQR&); | 89 friend std::ostream& operator << (std::ostream&, const FloatQR&); |
83 | 90 |
84 protected: | 91 protected: |
85 | 92 |