1樓:匿名使用者
複數時候用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的六個最大特徵向值的量
matlab中,求特徵值的函式eigs
2樓:匿名使用者
d 是乙個對來角線矩陣,對角自線上每乙個值為特徵bai值v是和d中特du
徵值對應的特徵向zhi量
引數表示計算距離
dao0最近的三個特徵值。
ps這個函式用的是arpaack的軟體包,利用的是近年發展的arnoldi 演算法
eigs 函式適合大型矩陣(一般非對稱,稀疏)部分特徵值計算。
要是你要求的的矩陣<1000維,推薦使用[v,d]=eig(a),瞬間計算出所有特徵值。
matlab中如何求特徵值?
3樓:
用eig這個函式,eig就是特徵值eigenvalue(特徵值)和eigenvector(特徵向量)的縮寫,可以返回特徵值和特徵向量
4樓:匿名使用者
[v,d]=eig(a)
輸入矩陣a,輸出特徵向量v和特徵值d
v的第n列為d的第n個特徵值的特徵向量
在用matlab算特徵向量的時候出現以下錯誤是什麼原因呢?
5樓:兔子和小強
因為d-w矩陣不可逆,條件數為無窮大。可以給它的對角線加點修正量100*eps:
[vc, ev] = eigs(d-w + eye(size(d))*eps*100, d, 2, '**');
6樓:
>> a=fix(10*rand(1,10)+5); %隨機生成乙個1x10的向量
>> a(1:2:10)=0; %令奇數字都為0
>> a(find(a==0))=;%找到a中0的位置,並令其為空,即刪除
求助各位大神,關於eigs函式錯誤的
7樓:pest永遠幸福兒
>> opts.disp=0;
>> [e,~]=eigs(feature,100,'**',opts);
??? error using ==> eigs>checkinputs/lufactoraminussigmab at 1124
(a-sigma*i)is singular. the shift is an eigenvalue.
try to use some other shift please.
error in ==> eigs>checkinputs at 895
[l,u,pp,**,dgasb] = lufactoraminussigmab;
error in ==> eigs at 94
[a,amatrix,isrealprob,issyma,n,b,classab,k,eigs_sigma,whch
matlab eigs 求矩陣 稀疏矩陣 最小的幾個特徵值和特徵向量 matlab 50
8樓:
1e5*1e5的稀疏矩陣,資料沒多大 300mb左右 但是 如果 eigs 用ms的話 直接記憶體就噴了 要是求最大的 就不會 。。。。
9樓:匿名使用者
有多大?,可以發lhmhz@**.***嗎?
matlab中如何求矩陣的特徵值和特徵向量
10樓:枕風宿雪流年
具體步驟分析如下:
1、第一步我們首先需要知道計算矩陣的特徵值和特徵向量要用eig函式,可以在命令列視窗中輸入help eig,檢視一下eig函式的用法,如下圖所示:
2、第二步在命令列視窗中輸入a=[1 2 3;2 4 5;7 8 9],按回車鍵之後,輸入[x,y]=eig(a),如下圖所示:
3、第三步按回車鍵之後,得到了x,y的值,其中x的每一列值表示矩陣a的乙個特徵向量,這裡有3個特徵向量,y的對角元素值代表a矩陣的特徵值,如下圖所示:
4、第四步如果我們要取y的對角元素值,可以使用diag(y),如下圖所示:
5、第五步按回車鍵之後,可以看到已經取出y的對角線元素值,也就是a矩陣的特徵值,如下圖所示:
6、第六步我們也可以在命令列視窗help diag,可以看到關於diag函式的用法,如下圖所示:
11樓:子衿悠你心
可以運用eig函式求特徵值和特徵向量。
e=eig(a):求矩陣a的全部特徵值,構成向量e。
[v,d]=eig(a):求矩陣a的全部特徵值,構成對角陣d,並求a的特徵向量構成v的列向量。
[v,d]=eig(a,'nobalance'):與第2種格式類似,但第2種格式中先對a作相似變換後求矩陣a的特徵值和特徵向量,而格式3直接求矩陣a的特徵值和特徵向量。
例項:求矩陣a=[1,2;2,1]的特徵值和特徵向量。
拓展說明:
在matlab中,還有個函式eigs,可以求特徵向量和特徵值的子集。
d = eigs(a) %求稀疏矩陣a的6個絕對值最大特徵值d,d以向量形式存放。
d = eigs(a,k) %返回k個最大特徵值
12樓:匿名使用者
eig函式直接可以求特徵值和特徵向量
在matlab中,計算矩陣a的特徵值和特徵向量的函式是eig(a),常用的呼叫格式有5種:
e=eig(a):求矩陣a的全部特徵值,構成向量e。
[v,d]=eig(a):求矩陣a的全部特徵值,構成對角陣d,並求a的特徵向量構成v的列向量。
[v,d]=eig(a,'nobalance'):與第2種格式類似,但第2種格式中先對a作相似變換後求矩陣a的特徵值和特徵向量,而格式3直接求矩陣a的特徵值和特徵向量。
e=eig(a,b):由eig(a,b)返回n×n階方陣a和b的n個廣義特徵值,構成向量e。
[v,d]=eig(a,b):由eig(a,b)返回方陣a和b的n個廣義特徵值,構成n×n階對角陣d,其對角線上的n個元素即為相應的廣義特徵值,同時將返回相應的特徵向量構成n×n階滿秩矩陣,且滿足av=bvd。
13樓:百度使用者
a=[1 1/4;4 1]
a =1.0000 0.2500
4.0000 1.0000
>> [v,d]=eig(a)
v =0.2425 -0.2425
0.9701 0.9701
d =2 0
0 0
按照這道題的計算過程算就可以了,eig是求特徵值和特徵向量命令,v是特徵向量,是列向量,d是特徵值矩陣,主對角線元素就是特徵值,與特徵向量的列對應的
14樓:匿名使用者
[v.d]=eig(a) a為矩陣
matlab eigs 求矩陣 稀疏矩陣 最小的幾個特徵值和特徵向量 matlab
15樓:饅頭爛布
eigs 可以只bai求矩陣的幾個最小的或du
者最大的(或者最接近某
zhi乙個數dao值的)特徵值和對應的回特徵向量,並且能夠處答理稀疏矩陣(如果矩陣規模很大而且稀疏程度有很高的話,使用稀疏矩陣速度會快很多)。當然它使用的演算法和 eig 不一樣,是迭代的方式
16樓:樓皓揚秋白
有多大?,可以發lhmhz@**.***嗎?
matlab求助大神艾兇求過,matlab求助大神啊,小白求過!
沒看太明bai白題主到底想要做什麼du。zhi在 的最後有這樣兩dao 句 set handles.uitable2,data 內,d set handles.uitable2,data c 其效果是,前面一句不容會起作用,因為uitable的data屬性隨後就被覆蓋了。如果希望同時顯示d和c,應該...
matlab中用plot功能時出現一下現象,求解!還沒入門
當你是想做矩陣間來的乘法時 就不源用 當你想讓矩陣對應元素相乘時 就需要用 你的程式中,x為 1,2,3,4,5 一行五列的矩陣 y2 x.2為矩陣中對應元素相乘,即1 1,2 2,3 3,4 4,5 5,構成了y2矩陣 y4 x 2為矩陣間的乘法,要求相乘的兩個矩陣中第乙個矩陣的列數等於第二個矩陣...
matlab中用什麼命令可以給縱座標y1,y2命名 謝謝高人
x 0 0.25 4 y exp x plotyy x,y,x,y,plot semilogy hold on title 題目 ylabel y1座標 xlabel x軸 這不就對著呢,你不是會嗎。x 0 0.01 20 y1 200 exp 0.05 x sin x y2 0.8 exp 0.5...