tqrfunc.h - numeric - C++ library with numerical algorithms
(HTM) git clone git://src.adamsgaard.dk/numeric
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) LICENSE
---
tqrfunc.h (821B)
---
1 // Make sure header is only included once
2 #ifndef qrfunc_h_
3 #define qrfunc_h_
4
5 #include <armadillo>
6 #include "header.h"
7
8 // QR structure
9 class QR {
10 private:
11 // System size
12 const Lengthtype n;
13
14 public:
15 //// Data
16
17 // Input data
18 arma::mat A;
19
20 // QR decomposition matrices
21 arma::mat Q;
22 arma::mat R;
23
24 //// Prototype functions
25
26 // Constructor prototype
27 QR(arma::mat &A);
28
29 // Destructor
30 ~QR();
31
32 // Return system size
33 Lengthtype size();
34
35 // QR decomposition of Armadillo matrix A, returning R
36 // and modified A (=Q)
37 void decomp();
38
39 // Backsubstitution of triangular system
40 arma::vec backsub(arma::vec &b);
41
42 // Absolute value of the determinant of matrix R
43 Floattype det();
44
45 // Inverse of matrix A
46 arma::mat inverse();
47 };
48
49 #endif