Eigen库求取最大特征值和特征向量
2017-04-13 16:04
585 查看
原文链接:http://blog.csdn.net/wcsgzc/article/details/53946345
Eigen库中有求取矩阵特征值和特征向量的函数EigenSolver,用起来很方便。
但是官网说明文档里,求取特征向量后仅仅是输出来表示,如何使用求得的这些参数,我花了一点时间琢磨出来。
举例如下:
Eigen库中有求取矩阵特征值和特征向量的函数EigenSolver,用起来很方便。
但是官网说明文档里,求取特征向量后仅仅是输出来表示,如何使用求得的这些参数,我花了一点时间琢磨出来。
举例如下:
Matrix<double, 4, 4>K= MatrixXd::Random(4,4); EigenSolver<Matrix<double, 4, 4>> es(K); MatrixXcd evecs = es.eigenvectors();//获取矩阵特征向量4*4,这里定义的MatrixXcd必须有c,表示获得的是complex复数矩阵 MatrixXcd evals = es.eigenvalues();//获取矩阵特征值 4*1 MatrixXd evalsReal;//注意这里定义的MatrixXd里没有c 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);//得到对应特征向量
相关文章推荐
- Eigen库求取最大特征值和特征向量
- 用c语言求取一个矩阵的最大值及其下标
- 二维数组和最大字数组求取 2
- 动态规划求取连续数组最大和
- 特征值和特征向量的求取方法
- 非递归求取二叉树的最大/小深度
- 动态规划求取连续数组最大和
- 编写程序:从键盘上输入若干个整数(以输入-1作为结束标识),输出这些数中的最大值和最小值,要求编写一个函数实现最大值和最小值的求取。
- 求取两个数的最大公约数
- 编程求取两个整数的最大公约数.欧几里德算法
- 正反求取最大公共子串
- Matlab_求最大特征值和特征向量
- HDU1754线段树求取区间最大值
- 动态规划求取连续数组最大和
- 2017.8.1拼多多内推内推笔试题(1)—最大乘积的求取(分治求K大(小))
- C++实现——求取最大公约数
- MATLAB求最大特征值和特征向量
- 递归实现求取两个字符串的最大公约数
- 使用异或运算和与运算求取二者最大值和最小值(不使用判断语句求二者最小值)
- 求取a-b中约数最大数字的约数