ERROR for Matrix dimensions must agree.
1 次查看(过去 30 天)
显示 更早的评论
Hello all,
here is my function
function [error] =stress5_function(Ke,n,Sult,u,t,S0,k,m)
pa=0.1013 ;
S3=5 ;
Ei=Ke.*pa.*(S3./pa).^n;
Rf=(S0+k.*exp(-(S3./m)))./(Sult+u.*exp(-(S3./t)));
% z=(σ1-σ3)
z=0:0.0001:5;
Et=Ei.*(1-(Rf.*z)./(S0+k.*exp(-(S3./m))));
Et(Et<0)=0;
x=(z./Et).*100;
A=xlsread('5MPa','A1:A32');
B=A';
C=xlsread('5MPa','B1:B32');
D=C';
startingIndex = find(x==0);
endingIndex = find(x>=16);
desiredX = x(startingIndex:endingIndex);
desiredZ = z(startingIndex:endingIndex);
A1 = trapz(desiredX,desiredZ);
A2= trapz(B,D);
err= ((A1-A2)./A1)*100;
display(err,'error %');
end
when I type stress5_function([1115 1116],[0.3 0.4], [2.7 2.8], [22 23],[1.11 1.8],[2.677 4.462],[30.9 50],[0.97 1.5]) the error occur.
I can do the function with a set of parameter but can't do it with two
Matrix dimensions must agree.
Error in stress5_function (line 9)
Et=Ei.*(1-(Rf.*z)./(S0+k.*exp(-(S3./m))));
Can anyone please help !!! Thanks a lot!!!!
0 个评论
采纳的回答
Robert
2016-2-23
Your variable z is not the same size as Rf, which matches the size of your inputs. The element-wise multiplication is happy to expand your scalars when you multiply by z but cannot do the same when you input vectors.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!