matlab eigs求矩陣稀疏矩陣最小的幾個特徵值和特徵向量matlab

2021-04-13 07:25:40 字數 3317 閱讀 8327

1樓:

1e5*1e5的稀疏矩陣,資料沒多大 300mb左右 但是 如果 eigs 用ms的話 直接記憶體就噴了 要是求最大的 就不會 。。。。

2樓:匿名使用者

有多大?,可以發[email protected]嗎?

matlab eigs 求矩陣 稀疏矩陣 最小的幾個特徵值和特徵向量 matlab

3樓:饅頭爛布

eigs 可以只bai求矩陣的幾個最小的或du

者最大的(或者最接近某

zhi一個數dao值的)特徵值和對應的回特徵向量,並且能夠處答理稀疏矩陣(如果矩陣規模很大而且稀疏程度有很高的話,使用稀疏矩陣速度會快很多)。當然它使用的演算法和 eig 不一樣,是迭代的方式

4樓:樓皓揚秋白

有多大?,可以發[email protected]嗎?

matlab中,求特徵值的函式eigs

5樓:匿名使用者

d 是一個對來角線矩陣,對角自線上每一個值為特徵bai值v是和d中特du

徵值對應的特徵向zhi量

參數列示計算距離

dao0最近的三個特徵值。

ps這個函式用的是arpaack的軟體包,利用的是近年發展的arnoldi 演算法

eigs 函式適合大型矩陣(一般非對稱,稀疏)部分特徵值計算。

要是你要求的的矩陣<1000維,推薦使用[v,d]=eig(a),瞬間計算出所有特徵值。

【matlab】關於矩陣的特徵值和特徵向量的兩個問題。1、eig(a)與eigs(a) 有什麼區別嗎? 2、eig(sym)

6樓:匿名使用者

a本身是數值矩陣,sym(a)則變成了符號矩陣,數值計算可以得到精確的結果,符號計算只能得到表示式。

eig(a)是求解a的特徵向量

eigs(a)是求解a的最大特徵值組成的向量

在matlab中求矩陣特徵值和特徵向量的**

7樓:大野瘦子

>>clc;clear;close;

>>a=[3,-1,-2;2,0,-2;2,-1,-1];

>>[x,b]=eig(a) %求矩陣a的特徵值和特徵向量,其中b的對角線元素是特徵值,

%x的列是相應的特徵向量

最後的結果是:

x =0.7276 -0.5774 0.6230

0.4851 -0.5774 -0.2417

0.4851 -0.5774 0.7439

b =1.0000 0 0

0 0.0000 0

0 0 1.0000

特徵值和特徵向量的求解根據專案的需求或者是矩陣的具體形式,主要可以分成如下三種形式:

1、只需要獲得矩陣的最大特徵值和特徵值所對應的特徵向量。

2、需要求取矩陣的所有特徵值。

3、需要求取特徵值和特徵向量的矩陣為實對稱矩陣,則可以通過另一種方法進行求解。

這三種形式特徵值和特徵向量的求取:

1.如果自己僅僅要求最大特徵值的話肯定採用形式1的演算法,該演算法的優點是時間複雜度較低,計算量相對較小,該方法不但能夠求取特徵值和特徵向量,而且只要特徵值不全為0,該方法都能獲得想要的結果。

2.如果需要獲得一個矩陣的所有特徵值,則通過形式2可以很好的解決該問題,但是該方法的缺點是僅僅能夠獲得特徵值,獲得特徵值之後利用其它方法進行求解,這樣做自然而然計算量就大了起來。

3.如果矩陣為實對稱矩陣,那麼可以通過形式3對其進行特徵值和特徵向量的求取,該方法相對於形式2的好處就是能夠一次性將特徵值和特徵向量求取出來,缺點就是矩陣必須是實對稱矩陣,至於演算法複雜度方面我沒有進行測試。

8樓:匿名使用者

1、首先開啟自己的電腦,然後在桌面上開啟matlab軟體,進入matlab主介面。

2、然後需要知道計算矩陣的特徵值和特徵向量要用eig函式,可以在該軟體的命令列視窗中輸入help eig,檢視一下eig函式的用法。

3、在該軟體命令列視窗中輸入a=[1 2 3;2 4 5;7 8 9],你按鍵盤上的回車鍵之後,輸入[x,y]=eig(a)。

4、當你按了鍵盤上的回車鍵之後,得到了x,y的值,其中x的每一列值表示矩陣a的一個特徵向量,裡面有3個特徵向量,y的對角元素值代表a矩陣的特徵值。

9樓:

matlab具體**如下:

>>clc;

>>clear;

>>close;

>>a=[3,-1,-2;2,0,-2;2,-1,-1];

>>[x,b]=eig(a)

**中最後一行指的是求矩陣a的特徵值和特徵向量,其中b的對角線元素是特徵值,而x的列即為相應的特徵向量。

10樓:g用事實說話

不明白你說的是什麼意思,我看不懂啊,你能把那個意思詳細說一下嗎?

11樓:匿名使用者

>> a=[3 -1 -2;2 0 -2;2 -1 -1]a =3 -1 -2

2 0 -2

2 -1 -1

>> [v,d]=eig(a)

v =0.7276 -0.5774 0.

62300.4851 -0.5774 -0.

24170.4851 -0.5774 0.

7439d =1.0000 0 00 0.0000 00 0 1.

0000d為特徵值,v為每個特徵值對應

的特徵向量

12樓:匿名使用者

[d,v]=eig(a)

13樓:匿名使用者

a=[3 -1 -2 ;2 0 -2;2 -1 -1];

[u v]=eigs(a)

求助!!!matlab 中用eigs求特徵值時出現如下錯誤,請問是怎麼回事,如何修正?**等!!!!

14樓:匿名使用者

複數時候用eigs,實數時候用eig!具體到稀疏矩陣可能也有差別,help裡提到的是 :

d = eig(a) returns a vector of the eigenvalues of matrix a.

返回的d是矩陣a的特徵值向量;

d = eigs(a) returns a vector of a's six largest magnitude eigenvalues.

返回的d是矩陣a的六個最大特徵向值的量

什麼是稀疏矩陣,什麼是稀疏矩陣,他是幹什麼用的

你好,定義如下。非零元素佔全部元素的百分比很小 例如5 以下 的矩陣。有的矩陣非零元素佔全部元素的百分比較大 例如近50 但它們的分佈很有規律,利用這一特點可以避免存放零元素或避免對這些零元素進行運算,這種矩陣仍可稱為稀疏矩陣。矩陣元素中,0的個數遠多於非零元素個數的矩陣,稱為稀疏矩陣。稀疏矩陣 如...

大型稀疏矩陣有什麼C包實現比較快eigen

就正常點single play 就行了。unturned這遊戲你要是不下輔助清檔根本就不可能開始新遊戲的。如何在dev c 中使用eigen 10 您好,新增原始檔來的下拉選單沒源有個並列的新增baiinclude的選項?sdk原始碼裡有沒du 有目zhi錄eigen dense?如果執行的 是通過...

求矩陣的逆矩陣 c語言編的程式,求矩陣的逆矩陣 c語言編的程式

思路,就按照線性代數書上求逆矩陣的步驟,目前只會指定階的。自己做吧,分太少,編個這麼複雜的程式至少要半個小時 include include include int brinv double a,int n if d 1.0 1.0 if is k k for j 0 j n 1 j if js k...