tqrfunc.h - numeric - C++ library with numerical algorithms
HTML 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