C++中的矩陣特徵值

最近需要在C++環境下求矩陣的特徵值和特徵向量,根據任務需求有兩種思路可供選擇:

  1. 使用現成的矩陣庫
    網上有一些開源的矩陣庫可以使用,在Windows下可以參考張睿卿的博客C++矩陣處理工具——Eigen,在Linux環境下可以參考博客C 和 C++ 的矩陣庫。這裏有一篇博客調查了各種C++矩陣算法包在VisualStudio2005中求解實對稱矩陣特徵值算法包調查,建議使用LAPACK/CLAPACK庫,具有驚人的效率。
  2. 自己代碼實現矩陣基本運算
    求矩陣的特徵值與特徵向量有三種方法:冪法、雅克比法以及QR法
    目前覺得可以使用QR分解的方法來求特徵值,有一篇參考博客C++通過QR分解法求矩陣特徵值Matrix_EigenValue先Mark一下。
    參考博文矩陣的特徵值和特徵向量的雅克比算法C/C++實現

覺得自己代碼實現比較好的方案是用數值分析裏的雅各比迭代法求對稱矩陣的全部特徵值和特徵向量。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章