eigen::matrix2d matrix_22;
matrix_22 << 2,3,2,1;
cout << "matrix = \n"<< matrix_22
eigen::eigensolvereigen_solver ( matrix_22 );
cout << "matrix values = \n" << eigen_solver.eigenvalues() << endl;//形式為二維向量(4,0)和(-1,0)。真實值為4,-1。
cout << "matrix vectors = \n" << eigen_solver.eigenvectors() << endl;//輸出為單位化之後的。形式如下:
輸出結果:
matrix =
2 32 1
matrix values =
(4,0)
(-1,0)
matrix vectors =
(0.83205,0) (-0.707107,0)
(0.5547,0) (0.707107,0)
如果整個過程手算,會得到特徵值是:4,-1。對應的特徵向量分別是
注意輸出格式
Eigen庫求取最大特徵值和特徵向量
eigen庫中有求取矩陣特徵值和特徵向量的函式eigensolver,用起來很方便。但是官網說明文件裡,求取特徵向量後僅僅是輸出來表示,如何使用求得的這些引數,我花了一點時間琢磨出來。舉例如下 matrixk matrixxd random 4,4 eigensolverdouble,4,4 es ...
特徵值和特徵向量
在剛開始學的特徵值和特徵向量的時候只是知道了定義和式子,並沒有理解其內在的含義和應用,這段時間整理了相關的內容,跟大家分享一下 首先我們先把特徵值和特徵向量的定義複習一下 定義 設a是n階矩陣,如果數 和n維非零向量x使關係式 成立,那麼,這樣的數 稱為矩陣a的特徵值,非零向量x稱為a的對應於特徵值...
特徵值和特徵向量
特徵向量和特徵值在計算機視覺和機器學習中有許多重要的應用。眾所周知的例子是pca 主成分分析 進行降維或人臉識別是特徵臉。特徵向量和特徵值的乙個有趣應用在我的另一篇有關誤差橢圓的博文中提到。此外,特徵值分解形成協方差矩陣幾何解釋的基礎。在這篇文章中,我將簡單的介紹這個數學概念,並且展示如何手動獲取二...