(translator=roro, ChineseSource=roro-20020725-3\eigs.html, EnglishSource=c:\matlabr12\help\techdoc\ref\eigs.html)
MATLAB Function Reference    
eigs

找尋正方稀疏矩陣的特徵值和特徵向量

Syntax

Description

d = eigs(A) 回傳一向量其元素為 A 六個較大的特徵值。

[V,D] = eigs(A) 回傳一對角線矩陣 D 其含有 A 的六個較大的特徵值其一矩陣 V 其欄為對應的特徵向量。

[V,D,flag] = eigs(A) 亦回傳收歛旗標。若 flag0 則所有特徵值均收歛;否則並不是所有皆為收歛。

eigs(Afun,n) 接受函數 Afun 以取代矩陣 Ay = Afun(x) 應該回傳 y = A*x,其中 x 為一 n*1 的向量,而 n 即為 A 的尺寸。矩陣 A 藉由 Afun 來表示而且假設為實數且非對稱性。在所有呼叫的序列中,eigs(A,...) 可被 eigs(Afun,n,...) 取代。

eigs(A,B) 解廣義特徵值問題 A*V == B*V*DB 必須為對稱(或 Hermitian)正向定義且其尺寸等同於 Aeigs(A,[],...) 表示標準的特徵值問題 A*V == V*D

eigs(A,k) and eigs(A,B,k) 回傳前 k 個大的特徵值。

eigs(A,k,sigma) and eigs(A,B,k,sigma) 根據 sigma 回傳 k 個特徵值,其可為下列值之一:



scalar
特徵值近似於 sigma。若 A 為一函數,Afun 回傳 A\x(標準)或 (A-sigma*B)\x(廣義)。注意,B 僅必須為對稱(Hermitian)正向不完全定義
'lm'
最大等級(預設)
'sm'
最小等級
對於實數對稱問題,下列亦為選項:
'la'
最大代數(在 MATLAB 5 中為 'lr'
'sa'
最小代數(在 MATLAB 5 中為 'sr'
'be'
皆結束
針對非對稱性及複數問題,下列亦為選項:
'lr'
最大實數部份
'sr'
最小實數部份
'li'
最大虛數部份
'si'
最小虛數部份

eigs(A,K,sigma,opts)eigs(A,B,k,sigma,opts) 定義選項的結構:

參數
敘述
預設值
options.issym
1AA-sigma*BAfun 表示為對稱,否則為 0
0
options.isreal
1AA-sigma*BAfun 表示為實數,否則為 0
1
options.tol
收歛:abs(lamda_comp-lamda_true) < tol*abs(lamda_comp)
eps
options.maxit
最大次數的重覆。
300
options.p
基礎向量的數目。建議 p >= 2kp >= 2k+1 實數非對稱性)。注意:p 對於實數對稱必須滿足 k < p <= n,否則為 k+1 < p <= n。
2k
options.v0
開始向量。
Randomly generated by ARPACK
options.disp
特徵資訊顯示層級。
1
options.cholB
1B 為其 Cholesky 因子 chol(B),否則為 0。
0
options.permB
排列向量 permB 若稀疏矩陣 Bchol(B(permB,permB))
1:N

eigs(Afun,n,k,sigma,opts,p1,p2,...)eigs(Afun,n,B,k,sigma,opts,p1,p2,...) 提供額外的參數其傳送至 Afun(x,p1,p2,...)

Remarks

d = eigs(A,k) 並不是下列式子的代替

但卻最適合用在大型稀疏矩陣。若問題牽扯到記憶體,則其可用 eig(full(A)) 以達到較快的運算。

Algorithm

eigs 提供反連結,其需要 Fortran 函式庫 ARPACK 中的程序 DSAUPD, DSEUPD, DNAUPD, DNEUPD, ZNAUPD, 及 ZNEUPD 的支援。

Examples

範例 1:此範例顯示函數握把的用法。

同樣地,若 dnRk 為下列一行的函數:

則將傳送 dnRk 額外的參數 'C'15eigs

範例 2:west0479 為一實數 479*479 稀疏矩陣其含有實數及共軛複數的特微值。eig 計算所有 479 個特徵值,並選擇最大的特徵值。

此平面圖顯示由 eigeigs 計算出來 west0479 其 8 個最大的特徵值。

範例 3:A = delsq(numgrid('C',30)) 為一尺寸為 632 的對稱正向定義矩陣其特徵值合理地分配在範圍 (0 8) 之間,但有 18 個特徵值重覆於 4。函數 eig 計算所有 632 個特微值。其計算並繪製 A 的前六大及前六小的特徵值:

然而,在 4 重覆的特徵值必須更小心地處理。eigs(A,18,4.0) 計算靠近 4.0 的 18 個特徵值以試著找出 A - 4.0*I 的特徵值。此關係著除法形式 1/(lambda - 4.0),其中 lambdaA 特徵值的近似值。當 lambda 接近 4.0 時,eigs 並沒有接近。必須使用 sigma 靠近但不等於 4 以找出那 18 個特徵值。

平面圖顯示經由 eig 計算的 20 個特徵值其接近 4,由 eigs 計算 18 個特微值其靠近 4 - 1e-6。

See Also

arpackc, eig, svds

References

[1]  Lehoucq, R.B. and D.C. Sorensen, "Deflation Techniques for an Implicitly Re-Started Arnoldi Iteration," SIAM J. Matrix Analysis and Applications, Vol. 17, 1996, pp. 789-821.

[2]  Lehoucq, R.B., D.C. Sorensen, and C. Yang, ARPACK Users' Guide: Solution of Large-Scale Eigenvalue Problems with Implicitly Restarted Arnoldi Methods, SIAM Publications, Philadelphia, 1998.

[3]  Sorensen, D.C., "Implicit Application of Polynomial Filters in a k-Step Arnoldi Method," SIAM J. Matrix Analysis and Applications, Vol. 13, 1992, pp. 357-385.


 eig ellipj