如何利用matlab多項式求根求解矩陣特徵值?

Tags: ,

矩陣的特徵值求解在線性代數這門課中是一個重要知識點,而且在其他各科中有很多的應用。特徵值的物理意義:一個變換(矩陣)可由它的所有特徵向量完全表示,而每一個向量所對應的特徵值,就代表了矩陣在這一向量上的貢獻率——說的通俗一點就是能量(power)。本篇經驗就介紹如何利用matlab多項式求根求解矩陣特徵值。

如何利用matlab多項式求根求解矩陣特徵值

工具/原料

正常電腦

matlab軟件

方法/步驟

矩陣特徵值的數學定義

下面我們就看一下矩陣特徵值的數學定義。

定義:設A是n階方陣,如果存在數和n維非零向量α,使得關係式Aα=α成立,則稱為A的特徵值,α是A的對應特徵值λ的特徵向量.

如何利用matlab多項式求根求解矩陣特徵值

特徵多項式的數學定義

下面我們就看一下特徵多項式的數學定義。

定義:設A是n階矩陣,稱λI-A為A的特徵矩陣,其行列式 λI-A 為λ的n次多項式,稱為A的特徵多項式, λI-A =0稱為A的特徵方程。

如何利用matlab多項式求根求解矩陣特徵值

求矩陣的特徵多項式

在這裡我們創建一個三階矩陣,來求其矩陣的的特徵多項式,這裡要用到matlab中的poly函數指令。具體代碼及結果請看下圖。

如何利用matlab多項式求根求解矩陣特徵值

比較矩陣特徵值和特徵多項式的根

其實matlab自身就有求解矩陣特徵值的函數,即eig函數,這裡我們將用eig函數求得的特徵值和求解特徵多項式根的方法求得的矩陣特徵值做一比較,很明顯兩者是相等的。具體代碼看下圖。

如何利用matlab多項式求根求解矩陣特徵值

特徵多項式的伴隨矩陣

下面我們就順便在求一下特徵多項式的伴隨矩陣。計算前我們先要計算多項式係數向量的長度,然後據多項式係數構成伴隨陣。具體代碼請看下圖。

如何利用matlab多項式求根求解矩陣特徵值

注意事項

本例通過計算矩陣特徵值s和特徵多項式根r,驗證了“兩者相同”的理論結論。

矩陣的多項式是唯一的,但是有相同特徵多項式的矩陣是無限的。

相關問題答案