Error using gmres. Too many output arguments.
이전 댓글 표시
I am pretty sure about this code that it is working I copied it from a textbook. But when I run it I get the error
"Error using gmres. Too many output arguments." I did all I could but I couldn't able to fix the problem, I think the reason being that I am not strong in matlab coding. Help needed.
clear
m=200;A=2*eye(m)+0.5*randn(m)/sqrt(m);b=ones(m,1);
[x,flag,relres,iter,resvec]=gmres(A,b);
figure(1)
plot(eig(A),'o');
hold on;
x=(1.5:0.001:2.5);
plot(x,sqrt(0.25-(x-2).^2),'r',x,-sqrt(0.25-(x-2).^2),'r');
legend('eigenvalues of A','(x-2)^2+y^2=1/4')
figure(2)
n=1:length(resvec);
semilogy(n,resvec);
hold on;
semilogy(n,4.^(-n),'r');
legend('||r^n||/||b||','4^{-n}');
hold off
채택된 답변
추가 답변 (1개)
Yongjian Feng
2021년 11월 25일
0 개 추천
It is working, at least for 2021a. Which version are you using please?
When matlab outputs an error, it normally tells you which line as well. Does it say line 3?
댓글 수: 2
Hmm!
2021년 11월 25일
Christine Tobler
2021년 11월 25일
Perhaps you have another file called gmres.m on the path, which overrides the standard one?
Try
which -all gmres
this should list any additional gmres.m that MATLAB might try to call here.
카테고리
도움말 센터 및 File Exchange에서 MATLAB Support Package for Raspberry Pi Hardware에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!