Yes. The resolution is that I had another file in the path folder with gmres so removing that file to a different folder did the magic. Thanks ot @Christine Tobler for the insight.
Error using gmres. Too many output arguments.
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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
0 commentaires
Réponse acceptée
Plus de réponses (1)
Yongjian Feng
le 25 Nov 2021
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 commentaires
Christine Tobler
le 25 Nov 2021
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.
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!