STK++ 0.9.13
tutoSymEigen.cpp File Reference
#include <STKpp.h>
Include dependency graph for tutoSymEigen.cpp:

Go to the source code of this file.

Functions

int main (int argc, char **argv)
 

Function Documentation

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 4 of file tutoSymEigen.cpp.

5{
6 CSquareX a(5);
7 a << 0, 1, 2, 3, 4,
8 2, 3, 4, 5, 6,
9 2, 1, 6, 7, 8,
10 0, 3,-1, 2, 3,
11 3,-1, 1, 1, 0;
12 stk_cout << "STK++ Eigen decomposition:\n";
13 stk_cout << "--------------------------\n";
14 SymEigen<CSquareX> s(a.upperSymmetrize()); s.run();
15 stk_cout << "D matrix:\n";
16 stk_cout << s.eigenValues();
17 CSquareX QDQt = s.eigenVectors() * s.eigenValues().diagonalize() * s.eigenVectors().transpose();
18 stk_cout << "QDQ^T matrix:\n";
19 stk_cout << QDQt;
20 stk_cout << "\nlapack Eigen decomposition:\n";
21 stk_cout << "--------------------------\n";
23 stk_cout << "D matrix:\n";
24 stk_cout << ls.eigenValues();
25 QDQt = ls.eigenVectors() * ls.eigenValues().diagonalize() * ls.eigenVectors().transpose();
26 stk_cout << "QDQ^T matrix:\n";
27 stk_cout << QDQt;
28 return 0;
29}
#define stk_cout
Standard stk output stream.
virtual bool run()
run the computations.
The MultidimRegression class allows to regress a multidimensional output variable among a multivariat...

References STK::ArrayBase< Derived >::diagonalize(), STK::ISymEigen< Derived >::eigenValues(), STK::ISymEigen< Derived >::eigenVectors(), STK::ISymEigen< Derived >::run(), stk_cout, STK::ArrayBase< Derived >::transpose(), and STK::ArrayBase< Derived >::upperSymmetrize().