刚接触matlab,自己编的程序错在哪里了?为什么会出现?Subscripted assignment dimension mismatch.这是给遗传算法工具箱GUI编的适应度函数,如下function Z=effect(a)c=0.45;T=25;e=0.07;t=10;z=0.3;b=3.14/6;D0=10;z=0.5;u0=6.7;
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/27 11:10:55
![刚接触matlab,自己编的程序错在哪里了?为什么会出现?Subscripted assignment dimension mismatch.这是给遗传算法工具箱GUI编的适应度函数,如下function Z=effect(a)c=0.45;T=25;e=0.07;t=10;z=0.3;b=3.14/6;D0=10;z=0.5;u0=6.7;](/uploads/image/z/12507731-35-1.jpg?t=%E5%88%9A%E6%8E%A5%E8%A7%A6matlab%2C%E8%87%AA%E5%B7%B1%E7%BC%96%E7%9A%84%E7%A8%8B%E5%BA%8F%E9%94%99%E5%9C%A8%E5%93%AA%E9%87%8C%E4%BA%86%3F%E4%B8%BA%E4%BB%80%E4%B9%88%E4%BC%9A%E5%87%BA%E7%8E%B0%3FSubscripted+assignment+dimension+mismatch.%E8%BF%99%E6%98%AF%E7%BB%99%E9%81%97%E4%BC%A0%E7%AE%97%E6%B3%95%E5%B7%A5%E5%85%B7%E7%AE%B1GUI%E7%BC%96%E7%9A%84%E9%80%82%E5%BA%94%E5%BA%A6%E5%87%BD%E6%95%B0%2C%E5%A6%82%E4%B8%8Bfunction+Z%3Deffect%28a%29c%3D0.45%3BT%3D25%3Be%3D0.07%3Bt%3D10%3Bz%3D0.3%3Bb%3D3.14%2F6%3BD0%3D10%3Bz%3D0.5%3Bu0%3D6.7%3B)
刚接触matlab,自己编的程序错在哪里了?为什么会出现?Subscripted assignment dimension mismatch.这是给遗传算法工具箱GUI编的适应度函数,如下function Z=effect(a)c=0.45;T=25;e=0.07;t=10;z=0.3;b=3.14/6;D0=10;z=0.5;u0=6.7;
刚接触matlab,自己编的程序错在哪里了?为什么会出现?Subscripted assignment dimension mismatch.
这是给遗传算法工具箱GUI编的适应度函数,如下
function Z=effect(a)
c=0.45;
T=25;
e=0.07;
t=10;
z=0.3;
b=3.14/6;
D0=10;
z=0.5;
u0=6.7;
k=0.3;
Cp=0.3;
rou=1.009;
Da=D0*((2-z)/(2*(1-z)))^0.5;
l=Da/(1-k);
m=floor(10^3/l);
A=round(rand(m));
a=reshape(A,1,m*m);
[row,col]=find(A==1) ;
X=cos(b)*col+sin(b)*(m-row+1);
Y=sin(b)*col-cos(b)*(m-row+1);
B=[X,Y];
S=sortrows(B,1);
Xt=S(:,1);
Yt=S(:,2);
r=size(Xt,1);
N=r;
ct=c*N*(2+exp(-0.00174*N^2))/3*(1+T*e);
u(r)=u0;
for i=r-1:-1:1;
j=r;
for j=r:-1:i+1;
D(i)=Da*(1+2*k*(Xt(j)-Xt(i)));
if Xt(j)==Xt(i)
v(i,j)=u0;
elseif Yt(i)=Yt(j)-D(i)/2
v(i,j)=u(j)*(1-a*Da^2/D(i)^2);
else
v(i,j)=u0;
end
SUM=0;
for su=i+1:r;
SU=(1-v(i,su)/u0)^2;
SUM=SUM+SU;
end
end
u(i)=u0*(1-sqrt(SUM));
end
p=0.5*rou*u.^3*Cp;
pt=p*ones(r,1);
wt=pt*t;
Z=ct/wt;
把第一行去掉后在命令窗输入结果就出现了Subscripted assignment dimension mismatch.,但真的没找到问题在哪,
刚接触matlab,自己编的程序错在哪里了?为什么会出现?Subscripted assignment dimension mismatch.这是给遗传算法工具箱GUI编的适应度函数,如下function Z=effect(a)c=0.45;T=25;e=0.07;t=10;z=0.3;b=3.14/6;D0=10;z=0.5;u0=6.7;
v(i,j)=u(j)*(1-a*Da^2./D(i)^2);
a 是个向量对吧. 维度对不上. 37行