summaryrefslogtreecommitdiffhomepage
path: root/eigen/doc/snippets/Tridiagonalization_diagonal.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'eigen/doc/snippets/Tridiagonalization_diagonal.cpp')
-rw-r--r--eigen/doc/snippets/Tridiagonalization_diagonal.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/eigen/doc/snippets/Tridiagonalization_diagonal.cpp b/eigen/doc/snippets/Tridiagonalization_diagonal.cpp
new file mode 100644
index 0000000..6eec821
--- /dev/null
+++ b/eigen/doc/snippets/Tridiagonalization_diagonal.cpp
@@ -0,0 +1,13 @@
+MatrixXcd X = MatrixXcd::Random(4,4);
+MatrixXcd A = X + X.adjoint();
+cout << "Here is a random self-adjoint 4x4 matrix:" << endl << A << endl << endl;
+
+Tridiagonalization<MatrixXcd> triOfA(A);
+MatrixXd T = triOfA.matrixT();
+cout << "The tridiagonal matrix T is:" << endl << T << endl << endl;
+
+cout << "We can also extract the diagonals of T directly ..." << endl;
+VectorXd diag = triOfA.diagonal();
+cout << "The diagonal is:" << endl << diag << endl;
+VectorXd subdiag = triOfA.subDiagonal();
+cout << "The subdiagonal is:" << endl << subdiag << endl;