小菜狗11 2021-05-23 10:53 采纳率: 33.3%
浏览 888
已采纳

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)

  • 写回答

2条回答 默认 最新

  • CSDN专家-Matlab_Fans 2021-05-23 21:45
    关注
    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的维度问题,修改后的结果:

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?