3

ラプラシアンの 2 つの最小固有値の 2 つの固有ベクトルを見つけようとしています。私はこれを行う

[v,c]=eigs(L,M,2,'SM');

Lはラパルシアンで、はM質量行列です。

その結果、エラーが発生します

Error using eigs/checkInputs/LUfactorAminusSigmaB (line 1041)
The shifted operator is singular. The shift is an eigenvalue.
 Try to use some other shift please.


Error in eigs/checkInputs (line 855)
            [L,U,pp,qq,dgAsB] = LUfactorAminusSigmaB;

Error in eigs (line 94)
[A,Amatrix,isrealprob,issymA,n,B,classAB,k,eigs_sigma,whch, ...

これは私が何か間違ったことをしていることを意味していますか、それとも反復プロセスのために間違った最初の推測を選択しただけですか?

私が使用している行列には、降下条件番号が必要です...

4

2 に答える 2

1

正規化されたカットセグメンテーションを実装しているときに、同じ問題に遭遇しました。最小の固有値は 0 であるため、条件数は実際には無限大です。これは、基本的に MATLAB のエラー メッセージに関するものです。最初に LU 分解を実行しています。

I の倍数 10*eps*speye を正規化されたラプラシアンに追加して条件付けを改善したところ、修正されました。

于 2012-12-19T21:37:10.937 に答える