Error in using eigs: Error using arpackc, Expect 2 output arguments
7 次查看(过去 30 天)
显示 更早的评论
I was using function eigs but I met a problem:
[D,V]=eigs(F,E)
Error using arpackc
Expect 2 output arguments
Error in eigs (line 240)
arpackc( aupdfun, ido, ...
If I use eig instead of eigs, it will work correctly. My matlab virson is R2015b. What can I do to solve this? thank you very much!
2 个评论
Walter Roberson
2018-4-8
See my explanation below. This is not a Mathworks error, it is due to old code being in your path. Look for eigs and eigs_new
采纳的回答
Walter Roberson
2017-6-28
I just got hit with this in a third-party package. Someone had taken a 2008 copy of MATLAB's eigs and copied it, perhaps with some modifications, and named the file eigs_new.m but did not even bother to rename the function inside the file. The calls in the code to arpackc were not written with any output arguments. It appears that at some point between 2008b and 2013a, the internal undocumented arpackc was modified to expect two outputs from the function call.
In other words, the cause of this problem is that you (somehow) are using an eigs source code that was written for an older version of MATLAB than you are using. Use
which -all eigs
to figure out which eigs.m you are picking up. What you should be picking up is in the MATLAB installation directory for your version in toolbox/matlab/sparfun/eigs.m . Find the file you are getting instead and move it out of the way or adjust your MATLAB path with pathtool so that you get version appropriate for your release instead.
2 个评论
Chi-Hao Wu
2017-8-5
What a coincidence! The same error I got was also in a file named "eigs_new.m" whose function name inside was "eigs".
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!