matlab运行赋值具有的非单一 rhs 维度多于非单一下标数

n=50;m=20;p=0:0.1:1 a=linspace(0.01,0.5,m); X(:,1)=[p;1-p]; for j=1: m for i=1:n A=[(1-a(j)) 0.02;a(j) 0.98] X(:,i+1)=A*X(:,i); k(i,j)=X(1,i)/X(2,i) x(i,j)=X(1,i); y(i,j)=X(2,i); end end figure(1) i=1:n; j=1:m; mesh(a(j),i,x(i,j)) xlabel('城市到郊区的迁移率'), ylabel('时间年') zlabel('城市人数') ylim([1,n]); figure(2) i=1:n; j=1:m; mesh(a(j),i,y(i,j)) xlabel('城市到郊区的迁移率 ') ylabel('时间年') zlabel('郊区人数 ') ylim([1,n]) figure(3) i=1:n j=1:m surf(a(j),i,k(i,j)); view(0,90)

n=50;m=20;
p=0 ;
a=linspace(0.01,0.5,m); 
X(:,1)=[p; 1-p]; 
for j=1: m 
    for i=1:n 
        A=[(1-a(j)) 0.02;a(j) 0.98] 
        X(:,i+1)=A*X(:,i);
        k(i,j)=X(1,i)/X(2,i) 
        x(i,j)=X(1,i);
        y(i,j)=X(2,i);
    end
end
figure(1) 
i=1:n; 
j=1:m; 
mesh(a(j),i,x(i,j)) 
xlabel('城市到郊区的迁移率'), 
ylabel('时间年') 
zlabel('城市人数') 
ylim([1,n]); 
figure(2) 
i=1:n; j=1:m; 
mesh(a(j),i,y(i,j)) 
xlabel('城市到郊区的迁移率 ') 
ylabel('时间年') 
zlabel('郊区人数 ') 
ylim([1,n]) 
figure(3) 
i=1:n 
j=1:m 
surf(a(j),i,k(i,j)); 
view(0,90)

问题最主要是p的维度问题,修改后的结果:

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632