Why do I get the error message : 'Too Many Output Arguments' when I try to execute a function?

조회 수: 1 (최근 30일)
Here I attached my files:
function [f]=hanu(~,y)
%f=y(1); G=y(2); H=(3); I=y(5); J=y(6); K=y(7); M=y(4)
k=0.5;
B=0.5;
we=3;
n=0.2;
J=0.2;
Pr=2;
L=0.5;
Sc=1.2;
f=zeros(7,1);
f(1)=G;
f(2)=H;
f(3)=(G^2-F*H-2*k*H)*(1+we^2*H^2)^((n-1)/2)-k*(n-1)*we^2*H^3*(1+we^2*H^2)^((n-3)/2)+B*G/((1+2*k*eta)*(1+we^2*H^2)^((n-1)/2)+(n-1)*we^2*H^2*(1+2*k*eta)*(1+we^2*H^2)^(n-3)/2);
f(4)=I;
f(5)=(-2*k*I)-Pr*I*y(1)/(1+2*k*eta);
f(6)=K;
f(3)=(L*J*(1-J)^2-K*y(1)-(2/Sc)*k*K)/((1/Sc)*1+2*eta*k);
f=[f(1) f(2) f(3) f(4) f(5) f(6) f(7) ];
end
-------------------------------------------->
function basefluid(N,albha,beta,gamma)
%f=h1; G=h2; H=h3; I=h5; J=h6; K=h7; M=h4
% Boundary conditions f(0)=0; G(0)=1; G(inf)=1; M(0)=1; M(inf)=0; J(inf)=1; K(0)=Ls*J(0)
%Initial approximation H(0)=-1; I(0)=1; K(0)=1;
p=0; q=1; h=(b-a)/N;
i=0;
for i=p:h:q
eta(i+1)= (eta(i)+h);
k1= F1(f(i), G(i), H(i), I(i), J(i), K(i), M(i), eta(i));
l1= F2(f(i), G(i), H(i), I(i), J(i), K(i), M(i), eta(i));
m1= F3(f(i), G(i), H(i), I(i), J(i), K(i), M(i), eta(i));
n1= F4(f(i), G(i), H(i), I(i), J(i), K(i), M(i), eta(i));
o1= F5(f(i), G(i), H(i), I(i), J(i), K(i), M(i), eta(i));
p1= F6(f(i), G(i), H(i), I(i), J(i), K(i), M(i), eta(i));
q1= F7(f(i), G(i), H(i), I(i), J(i), K(i), M(i), eta(i));
k2= F1(f(i)+1/4*h*k1, G(i)+1/4*h*l1, H(i)+1/4*h*m1, I(i)+1/4*h*n1, J(i)+1/4*h*o1, K(i)+1/4*h*p1, M(i)+1/4*h*q1, eta(i)+h/4);
l2= F2(f(i)+1/4*h*k1, G(i)+1/4*h*l1, H(i)+1/4*h*m1, I(i)+1/4*h*n1, J(i)+1/4*h*o1, K(i)+1/4*h*p1, M(i)+1/4*h*q1, eta(i)+h/4);
m2= F3(f(i)+1/4*h*k1, G(i)+1/4*h*l1, H(i)+1/4*h*m1, I(i)+1/4*h*n1, J(i)+1/4*h*o1, K(i)+1/4*h*p1, M(i)+1/4*h*q1, eta(i)+h/4);
n2= F4(f(i)+1/4*h*k1, G(i)+1/4*h*l1, H(i)+1/4*h*m1, I(i)+1/4*h*n1, J(i)+1/4*h*o1, K(i)+1/4*h*p1, M(i)+1/4*h*q1, eta(i)+h/4);
o2= F5(f(i)+1/4*h*k1, G(i)+1/4*h*l1, H(i)+1/4*h*m1, I(i)+1/4*h*n1, J(i)+1/4*h*o1, K(i)+1/4*h*p1, M(i)+1/4*h*q1, eta(i)+h/4);
p2= F6(f(i)+1/4*h*k1, G(i)+1/4*h*l1, H(i)+1/4*h*m1, I(i)+1/4*h*n1, J(i)+1/4*h*o1, K(i)+1/4*h*p1, M(i)+1/4*h*q1, eta(i)+h/4);
q2= F7(f(i)+1/4*h*k1, G(i)+1/4*h*l1, H(i)+1/4*h*m1, I(i)+1/4*h*n1, J(i)+1/4*h*o1, K(i)+1/4*h*p1, M(i)+1/4*h*q1, eta(i)+h/4);
k3= F1(f(i)+1/8*h*k1+1/8*h*k2, G(i)+1/8*h*l1+1/8*h*l2, H(i)+1/8*h*m1+1/8*h*m2, I(i)+1/8*h*n1+1/8*h*n2, J(i)+1/8*h*o1+1/8*h*o2, K(i)+1/8*h*p1+1/8*h*p2, M(i)+1/8*h*q1+1/8*h*q2, eta(i)+h/4);
l3= F2(f(i)+1/8*h*k1+1/8*h*k2, G(i)+1/8*h*l1+1/8*h*l2, H(i)+1/8*h*m1+1/8*h*m2, I(i)+1/8*h*n1+1/8*h*n2, J(i)+1/8*h*o1+1/8*h*o2, K(i)+1/8*h*p1+1/8*h*p2, M(i)+1/8*h*q1+1/8*h*q2, eta(i)+h/4);
m3= F3(f(i)+1/8*h*k1+1/8*h*k2, G(i)+1/8*h*l1+1/8*h*l2, H(i)+1/8*h*m1+1/8*h*m2, I(i)+1/8*h*n1+1/8*h*n2, J(i)+1/8*h*o1+1/8*h*o2, K(i)+1/8*h*p1+1/8*h*p2, M(i)+1/8*h*q1+1/8*h*q2, eta(i)+h/4);
n3= F4(f(i)+1/8*h*k1+1/8*h*k2, G(i)+1/8*h*l1+1/8*h*l2, H(i)+1/8*h*m1+1/8*h*m2, I(i)+1/8*h*n1+1/8*h*n2, J(i)+1/8*h*o1+1/8*h*o2, K(i)+1/8*h*p1+1/8*h*p2, M(i)+1/8*h*q1+1/8*h*q2, eta(i)+h/4);
o3= F5(f(i)+1/8*h*k1+1/8*h*k2, G(i)+1/8*h*l1+1/8*h*l2, H(i)+1/8*h*m1+1/8*h*m2, I(i)+1/8*h*n1+1/8*h*n2, J(i)+1/8*h*o1+1/8*h*o2, K(i)+1/8*h*p1+1/8*h*p2, M(i)+1/8*h*q1+1/8*h*q2, eta(i)+h/4);
p3= F6(f(i)+1/8*h*k1+1/8*h*k2, G(i)+1/8*h*l1+1/8*h*l2, H(i)+1/8*h*m1+1/8*h*m2, I(i)+1/8*h*n1+1/8*h*n2, J(i)+1/8*h*o1+1/8*h*o2, K(i)+1/8*h*p1+1/8*h*p2, M(i)+1/8*h*q1+1/8*h*q2, eta(i)+h/4);
q3= F7(f(i)+1/8*h*k1+1/8*h*k2, G(i)+1/8*h*l1+1/8*h*l2, H(i)+1/8*h*m1+1/8*h*m2, I(i)+1/8*h*n1+1/8*h*n2, J(i)+1/8*h*o1+1/8*h*o2, K(i)+1/8*h*p1+1/8*h*p2, M(i)+1/8*h*q1+1/8*h*q2, eta(i)+h/4);
k4= F1(f(i)-1/2*h*k2+k3*h, G(i)-1/2*h*l2+l3*h, H(i)-1/2*h*m2+m3*h, I(i)-1/2*h*n2+n3*h, J(i)-1/2*h*o2+o3*h, K(i)-1/2*h*p2+p3*h, M(i)-1/2*h*q2+q3*h, eta(i)+1/2*h);
l4= F2(f(i)-1/2*h*k2+k3*h, G(i)-1/2*h*l2+l3*h, H(i)-1/2*h*m2+m3*h, I(i)-1/2*h*n2+n3*h, J(i)-1/2*h*o2+o3*h, K(i)-1/2*h*p2+p3*h, M(i)-1/2*h*q2+q3*h, eta(i)+1/2*h);
m4= F3(f(i)-1/2*h*k2+k3*h, G(i)-1/2*h*l2+l3*h, H(i)-1/2*h*m2+m3*h, I(i)-1/2*h*n2+n3*h, J(i)-1/2*h*o2+o3*h, K(i)-1/2*h*p2+p3*h, M(i)-1/2*h*q2+q3*h, eta(i)+1/2*h);
n4= F4(f(i)-1/2*h*k2+k3*h, G(i)-1/2*h*l2+l3*h, H(i)-1/2*h*m2+m3*h, I(i)-1/2*h*n2+n3*h, J(i)-1/2*h*o2+o3*h, K(i)-1/2*h*p2+p3*h, M(i)-1/2*h*q2+q3*h, eta(i)+1/2*h);
o4= F5(f(i)-1/2*h*k2+k3*h, G(i)-1/2*h*l2+l3*h, H(i)-1/2*h*m2+m3*h, I(i)-1/2*h*n2+n3*h, J(i)-1/2*h*o2+o3*h, K(i)-1/2*h*p2+p3*h, M(i)-1/2*h*q2+q3*h, eta(i)+1/2*h);
p4= F6(f(i)-1/2*h*k2+k3*h, G(i)-1/2*h*l2+l3*h, H(i)-1/2*h*m2+m3*h, I(i)-1/2*h*n2+n3*h, J(i)-1/2*h*o2+o3*h, K(i)-1/2*h*p2+p3*h, M(i)-1/2*h*q2+q3*h, eta(i)+1/2*h);
q4= F7(f(i)-1/2*h*k2+k3*h, G(i)-1/2*h*l2+l3*h, H(i)-1/2*h*m2+m3*h, I(i)-1/2*h*n2+n3*h, J(i)-1/2*h*o2+o3*h, K(i)-1/2*h*p2+p3*h, M(i)-1/2*h*q2+q3*h, eta(i)+1/2*h);
k5= F1(f(i)+3/16*h*k1+9/16*k4*h, G(i)+3/16*h*l1+9/16*l4*h, H(i)+3/16*h*m1+9/16*m4*h, I(i)+3/16*h*n1+9/16*n4*h, J(i)+3/16*h*o1+9/16*o4*h, K(i)+3/16*h*p1+9/16*p4*h, M(i)+3/16*h*q1+9/16*q4*h, eta(i)+3/4*h);
l5= F2(f(i)+3/16*h*k1+9/16*k4*h, G(i)+3/16*h*l1+9/16*l4*h, H(i)+3/16*h*m1+9/16*m4*h, I(i)+3/16*h*n1+9/16*n4*h, J(i)+3/16*h*o1+9/16*o4*h, K(i)+3/16*h*p1+9/16*p4*h, M(i)+3/16*h*q1+9/16*q4*h, eta(i)+3/4*h);
m5= F3(f(i)+3/16*h*k1+9/16*k4*h, G(i)+3/16*h*l1+3/16*l4*h, H(i)+3/16*h*m1+9/16*m4*h, I(i)+3/16*h*n1+9/16*n4*h, J(i)+3/16*h*o1+9/16*o4*h, K(i)+3/16*h*p1+9/16*p4*h, M(i)+3/16*h*q1+9/16*q4*h, eta(i)+3/4*h);
n5= F4(f(i)+3/16*h*k1+9/16*k4*h, G(i)+3/16*h*l1+3/16*l4*h, H(i)+3/16*h*m1+9/16*m4*h, I(i)+3/16*h*n1+9/16*n4*h, J(i)+3/16*h*o1+9/16*o4*h, K(i)+3/16*h*p1+9/16*p4*h, M(i)+3/16*h*q1+9/16*q4*h, eta(i)+3/4*h);
o5= F5(f(i)+3/16*h*k1+9/16*k4*h, G(i)+3/16*h*l1+3/16*l4*h, H(i)+3/16*h*m1+9/16*m4*h, I(i)+3/16*h*n1+9/16*n4*h, J(i)+3/16*h*o1+9/16*o4*h, K(i)+3/16*h*p1+9/16*p4*h, M(i)+3/16*h*q1+9/16*q4*h, eta(i)+3/4*h);
p5= F6(f(i)+3/16*h*k1+9/16*k4*h, G(i)+3/16*h*l1+3/16*l4*h, H(i)+3/16*h*m1+9/16*m4*h, I(i)+3/16*h*n1+9/16*n4*h, J(i)+3/16*h*o1+9/16*o4*h, K(i)+3/16*h*p1+9/16*p4*h, M(i)+3/16*h*q1+9/16*q4*h, eta(i)+3/4*h);
q5= F7(f(i)+3/16*h*k1+9/16*k4*h, G(i)+3/16*h*l1+3/16*l4*h, H(i)+3/16*h*m1+9/16*m4*h, I(i)+3/16*h*n1+9/16*n4*h, J(i)+3/16*h*o1+9/16*o4*h, K(i)+3/16*h*p1+9/16*p4*h, M(i)+3/16*h*q1+9/16*q4*h, eta(i)+3/4*h);
k6= F1(f(i)-3/7*h*k1+2/7*k2*h+12/7*k3*h-12/7*k4*h+8/7*k5*h, G(i)-3/7*h*l1+2/7*l2*h+12/7*l3*h-12/7*l4*h+8/7*l5*h, H(i)-3/7*h*m1+2/7*m2*h+12/7*m3*h-12/7*m4*h+8/7*m5*h, I(i)-3/7*h*n1+2/7*n2*h+12/7*n3*h-12/7*n4*h+8/7*n5*h, J(i)-3/7*h*o1+2/7*o2*h+12/7*o3*h-12/7*o4*h+8/7*o5*h, K(i)-3/7*h*p1+2/7*p2*h+12/7*p3*h-12/7*p4*h+8/7*p5*h, M(i)-3/7*h*q1+2/7*q2*h+12/7*q3*h-12/7*q4*h+8/7*q5*h, eta(i)+h);
l6= F2(f(i)-3/7*h*k1+2/7*k2*h+12/7*k3*h-12/7*k4*h+8/7*k5*h, G(i)-3/7*h*l1+2/7*l2*h+12/7*l3*h-12/7*l4*h+8/7*l5*h, H(i)-3/7*h*m1+2/7*m2*h+12/7*m3*h-12/7*m4*h+8/7*m5*h, I(i)-3/7*h*n1+2/7*n2*h+12/7*n3*h-12/7*n4*h+8/7*n5*h, J(i)-3/7*h*o1+2/7*o2*h+12/7*o3*h-12/7*o4*h+8/7*o5*h, K(i)-3/7*h*p1+2/7*p2*h+12/7*p3*h-12/7*p4*h+8/7*p5*h, M(i)-3/7*h*q1+2/7*q2*h+12/7*q3*h-12/7*q4*h+8/7*q5*h, eta(i)+h);
m6= F3(f(i)-3/7*h*k1+2/7*k2*h+12/7*k3*h-12/7*k4*h+8/7*k5*h, G(i)-3/7*h*l1+2/7*l2*h+12/7*l3*h-12/7*l4*h+8/7*l5*h, H(i)-3/7*h*m1+2/7*m2*h+12/7*m3*h-12/7*m4*h+8/7*m5*h, I(i)-3/7*h*n1+2/7*n2*h+12/7*n3*h-12/7*n4*h+8/7*n5*h, J(i)-3/7*h*o1+2/7*o2*h+12/7*o3*h-12/7*o4*h+8/7*o5*h, K(i)-3/7*h*p1+2/7*p2*h+12/7*p3*h-12/7*p4*h+8/7*p5*h, M(i)-3/7*h*q1+2/7*q2*h+12/7*q3*h-12/7*q4*h+8/7*q5*h, eta(i)+h);
n6= F4(f(i)-3/7*h*k1+2/7*k2*h+12/7*k3*h-12/7*k4*h+8/7*k5*h, G(i)-3/7*h*l1+2/7*l2*h+12/7*l3*h-12/7*l4*h+8/7*l5*h, H(i)-3/7*h*m1+2/7*m2*h+12/7*m3*h-12/7*m4*h+8/7*m5*h, I(i)-3/7*h*n1+2/7*n2*h+12/7*n3*h-12/7*n4*h+8/7*n5*h, J(i)-3/7*h*o1+2/7*o2*h+12/7*o3*h-12/7*o4*h+8/7*o5*h, K(i)-3/7*h*p1+2/7*p2*h+12/7*p3*h-12/7*p4*h+8/7*p5*h, M(i)-3/7*h*q1+2/7*q2*h+12/7*q3*h-12/7*q4*h+8/7*q5*h, eta(i)+h);
o6= F5(f(i)-3/7*h*k1+2/7*k2*h+12/7*k3*h-12/7*k4*h+8/7*k5*h, G(i)-3/7*h*l1+2/7*l2*h+12/7*l3*h-12/7*l4*h+8/7*l5*h, H(i)-3/7*h*m1+2/7*m2*h+12/7*m3*h-12/7*m4*h+8/7*m5*h, I(i)-3/7*h*n1+2/7*n2*h+12/7*n3*h-12/7*n4*h+8/7*n5*h, J(i)-3/7*h*o1+2/7*o2*h+12/7*o3*h-12/7*o4*h+8/7*o5*h, K(i)-3/7*h*p1+2/7*p2*h+12/7*p3*h-12/7*p4*h+8/7*p5*h, M(i)-3/7*h*q1+2/7*q2*h+12/7*q3*h-12/7*q4*h+8/7*q5*h, eta(i)+h);
p6= F6(f(i)-3/7*h*k1+2/7*k2*h+12/7*k3*h-12/7*k4*h+8/7*k5*h, G(i)-3/7*h*l1+2/7*l2*h+12/7*l3*h-12/7*l4*h+8/7*l5*h, H(i)-3/7*h*m1+2/7*m2*h+12/7*m3*h-12/7*m4*h+8/7*m5*h, I(i)-3/7*h*n1+2/7*n2*h+12/7*n3*h-12/7*n4*h+8/7*n5*h, J(i)-3/7*h*o1+2/7*o2*h+12/7*o3*h-12/7*o4*h+8/7*o5*h, K(i)-3/7*h*p1+2/7*p2*h+12/7*p3*h-12/7*p4*h+8/7*p5*h, M(i)-3/7*h*q1+2/7*q2*h+12/7*q3*h-12/7*q4*h+8/7*q5*h, eta(i)+h);
q6= F7(f(i)-3/7*h*k1+2/7*k2*h+12/7*k3*h-12/7*k4*h+8/7*k5*h, G(i)-3/7*h*l1+2/7*l2*h+12/7*l3*h-12/7*l4*h+8/7*l5*h, H(i)-3/7*h*m1+2/7*m2*h+12/7*m3*h-12/7*m4*h+8/7*m5*h, I(i)-3/7*h*n1+2/7*n2*h+12/7*n3*h-12/7*n4*h+8/7*n5*h, J(i)-3/7*h*o1+2/7*o2*h+12/7*o3*h-12/7*o4*h+8/7*o5*h, K(i)-3/7*h*p1+2/7*p2*h+12/7*p3*h-12/7*p4*h+8/7*p5*h, M(i)-3/7*h*q1+2/7*q2*h+12/7*q3*h-12/7*q4*h+8/7*q5*h, eta(i)+h);
f(i+1)= f(i)+ h/90*(7*k1+32*k3+12*k4+32*k5+7*k6);
G(i+1)= G(i)+ h/90*(7*l1+32*l3+12*l4+32*l5+7*l6);
H(i+1)= H(i)+ h/90*(7*m1+32*m3+12*m4+32*m5+7*m6);
I(i+1)= H(i)+ h/90*(7*n1+32*n3+12*n4+32*n5+7*n6);
J(i+1)= J(i)+ h/90*(7*o1+32*o3+12*o4+32*o5+7*o6);
K(i+1)= K(i)+ h/90*(7*p1+32*p3+12*p4+32*p5+7*p6);
M(i+1)= M(i)+ h/90*(7*q1+32*q3+12*q4+32*q5+7*q6);
end
end
--------------------------------------------------------------------------------------------------------->
% Newton's Method
N=1000;
albha=-1;
beta=1;
gamma=1;
yb=0.1;
Error=1;
while Error >=1e-5
[x,f]=Newfun(albha,beta,gamma);
albha = albha-(f(1,3)-yb)/f(1,4)
beta = beta-(f(5,1)-yb)/f(5,2)
gamma = gamma-(f(7,1)-yb)/f(7,2)
Error =abs(f(1,3)-yb)
Error =abs(f(5,1)-yb)
Error =abs(f(7,3)-yb)
end
plot(x,f(:,2))

답변 (2개)

Cris LaPierre
Cris LaPierre 2022년 9월 11일
What function are you trying to call that is giving you the error? The code you shared doesn't use either of the functions you have defined.
The error means you have called a function with more output variables than the function returns. Consider this example.
% Call function with a single output variable
A=f(1)
A = 2
% Your error - call function with more outputs than the function returns
[A,B] = f(1)
Error using solution>f
Too many output arguments.
% function has one output, out
function out = f(in)
out = in+1;
end

Image Analyst
Image Analyst 2022년 9월 11일
Why are you doing this
function [f]=hanu(~,y)
instead of this
function [f]=hanu(y)
That doesn't make sense to me.
Also, what is the line of code where you are calling and what is the complete error message (line number, line of code, error description - everything. ALL THE RED TEXT)?
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:

카테고리

Help CenterFile Exchange에서 Characters and Strings에 대해 자세히 알아보기

제품


릴리스

R2014a

Community Treasure Hunt

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

Start Hunting!

Translated by