原文链接:http://blog.csdn.net/wcsgzc/article/details/53946345
Eigen库中有求取矩阵特征值和特征向量的函数EigenSolver,用起来很方便。 但是官网说明文档里,求取特征向量后仅仅是输出来表示,如何使用求得的这些参数,我花了一点时间琢磨出来。 举例如下:
Matrix<
double,
4,
4>K= MatrixXd::Random(
4,
4);
EigenSolver<Matrix<
double,
4,
4>> es(K);
MatrixXcd evecs = es.eigenvectors();
MatrixXcd evals = es.eigenvalues();
MatrixXd evalsReal;
evalsReal=evals.
real();
MatrixXf::Index evalsMax;
evalsReal.rowwise().
sum().maxCoeff(&evalsMax);
Vector4d q;
q << evecs.
real()(
0, evalsMax), evecs.
real()(
1, evalsMax), evecs.
real()(
2, evalsMax), evecs.
real()(
3, evalsMax);
转载请注明原文地址: https://ju.6miu.com/read-667705.html