# eigs - Error with ARPACK routine znaupd: info = -8

15 ビュー (過去 30 日間)
Jeroen 2014 年 2 月 4 日
コメント済み: Matt J 2014 年 2 月 11 日
I am trying to find the eigenvalues and -vectors of a large-ish (4400x4400 elements) sparse matrix using eigs().
When I define a small subset of eigenvalues to be found, e.g. 20 values with the largest imaginary part (option 'li'), the algorithm takes too long to converge. If I request almost all eigenvalues to be found, I manage to get a correct answer. At least, sometimes.
More often than not I get back the error below. This seems to be dependent on the number of eigenvalues I request. It works for k=3000 but not for k=4000 or k=2500.
Error using eigs (line ###)
Error with ARPACK routine znaupd: info = -8
Going through the documentation of the znaupd routine ( http://www.caam.rice.edu/software/ARPACK/UG/node138.html ), I have found that this error code means the following:
Error return from LAPACK eigenvalue calculation;
This description doesn't help me at all to pin point what goes wrong and what I can change to avoid getting these errors.
Can anyone tell me what exactly triggers this error, and how I fix my matrices/problem to avoid it?

サインインしてコメントする。

### 回答 (1 件)

Bill Greene 2014 年 2 月 6 日
I'm not certain what the problem is but I can suggest something to try.
I'll assume you really want around 20 eigenvalues. By default, the algorithm is using 40 Lanczos vectors during the iteration. I suggest you increase the number of vectors to something like 100 using the opts.p option to eigs.
If you really want several thousand eigenvalues, I suggest considering converting the matrix to full and using the eig function to calculate all of them.
Bill
##### 1 件のコメント表示非表示 なし
Matt J 2014 年 2 月 11 日
Jeroen Commented:
Unfortunately it doesn't solve the problem.
Currently I'm circumventing the problem by setting sigma in eigs() to an estimated target eigenvalue instead of the option 'li' , requesting all the eigenvalues, and sorting them manually afterwards.
This seems to work for now, but is not really the answer to my problem.

サインインしてコメントする。

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by