Re: [問題] 特徵值問題

看板MATLAB作者 (prof)時間11年前 (2014/01/02 22:20), 編輯推噓2(205)
留言7則, 2人參與, 最新討論串1/1
※ 引述《magaiml (阿祈)》之銘言: : 想請教各位,關於特徵值的算法,以工數上學到的是 : det( a-mI )=0 : 行列式求得m之兩根為特徵值。 : 在matlab內使用 eig(a) 函數計算。 : 但如果我今天要求的是 : det( a-mb )=0 : b=[x,0;0,y] 這種非單位矩陣的矩陣 : 該如何求解? : 我原本是使用 eig(a) 後,再將特徵值除上 b : 但發現結果是錯的, : 我現在能想到的辦法是使用符號運算去求解, : 但實在麻煩,請問版友們有沒有更方便的解法? : 謝謝。 很快的想了一下 有錯請指證: a=[a11,a12;a21,a22] det(a-mb)=det([a11-mx,a12;a21,a22-my])=det([a11/x-m,a12/x;a21,a22-my])/x =det([a11/x-m,a12/x;a21/y,a22/y-m])/(x*y)=0 其實也就是解a'=[a11/x,a12/x;a21/y,a22/y]的特徵值 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.169.189.8

01/02 22:20, , 1F
當然 假設x和y都不為0
01/02 22:20, 1F

01/02 22:31, , 2F
謝謝你,此方法我有寫出來,連同特徵向量。
01/02 22:31, 2F

01/02 23:29, , 3F
剛剛看錯,原來你是事先推導出相對應的矩陣,讚,好方法,
01/02 23:29, 3F

01/02 23:29, , 4F
謝謝妳的分享,讓我多一個方法。
01/02 23:29, 4F

01/02 23:56, , 5F
其實就是inv(b)*a的特徵值
01/02 23:56, 5F

01/02 23:57, , 6F
我猜你後來發現的內建方法就是這樣弄的
01/02 23:57, 6F

01/03 00:05, , 7F
或寫成eig(b\a)更快
01/03 00:05, 7F
文章代碼(AID): #1InNMRow (MATLAB)
文章代碼(AID): #1InNMRow (MATLAB)