1 MatrixXd
X = MatrixXd::Random(5,5);
2 MatrixXd
A =
X +
X.transpose();
3 cout <<
"Here is a random symmetric 5x5 matrix, A:" << endl <<
A << endl << endl;
5 SelfAdjointEigenSolver<MatrixXd>
es(
A);
6 cout <<
"The eigenvalues of A are:" << endl <<
es.eigenvalues() << endl;
7 cout <<
"The matrix of eigenvectors, V, is:" << endl <<
es.eigenvectors() << endl << endl;
10 cout <<
"Consider the first eigenvalue, lambda = " << lambda << endl;
11 VectorXd
v =
es.eigenvectors().col(0);
12 cout <<
"If v is the corresponding eigenvector, then lambda * v = " << endl << lambda * v << endl;
13 cout <<
"... and A * v = " << endl <<
A * v << endl << endl;
15 MatrixXd
D =
es.eigenvalues().asDiagonal();
16 MatrixXd
V =
es.eigenvectors();
17 cout <<
"Finally, V * D * V^(-1) = " << endl << V * D * V.inverse() << endl;
cout<< "Here is a random symmetric 5x5 matrix, A:"<< endl<< A<< endl<< endl;SelfAdjointEigenSolver< MatrixXd > es(A)
cout<< "The eigenvalues of A are:"<< endl<< ces.eigenvalues()<< endl;cout<< "The matrix of eigenvectors, V, is:"<< endl<< ces.eigenvectors()<< endl<< endl;complex< float > lambda