寻Matlab达人.看看下面这段程序有错吗?为什运行完总是出错.function []=qiue(e,N1)K1=(1-e)/(1+e);K2=2/(1+e);K3=(2*e)/(1+e);E1=zeros(201,40);a=10;for z1=1:201 for b1=1:40 fg1=0;fg2=0;fg3=0;fg4=0;N=fix(a/(0.02*b1)+1);

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 08:14:01
寻Matlab达人.看看下面这段程序有错吗?为什运行完总是出错.function []=qiue(e,N1)K1=(1-e)/(1+e);K2=2/(1+e);K3=(2*e)/(1+e);E1=zeros(201,40);a=10;for z1=1:201    for b1=1:40        fg1=0;fg2=0;fg3=0;fg4=0;N=fix(a/(0.02*b1)+1);

寻Matlab达人.看看下面这段程序有错吗?为什运行完总是出错.function []=qiue(e,N1)K1=(1-e)/(1+e);K2=2/(1+e);K3=(2*e)/(1+e);E1=zeros(201,40);a=10;for z1=1:201 for b1=1:40 fg1=0;fg2=0;fg3=0;fg4=0;N=fix(a/(0.02*b1)+1);
寻Matlab达人.看看下面这段程序有错吗?为什运行完总是出错.
function []=qiue(e,N1)
K1=(1-e)/(1+e);
K2=2/(1+e);
K3=(2*e)/(1+e);
E1=zeros(201,40);
a=10;
for z1=1:201
for b1=1:40
fg1=0;fg2=0;fg3=0;fg4=0;N=fix(a/(0.02*b1)+1);
for n=0:N
fg1=fg1+(K1^(2*n)/(0.1*(z1-1)-2*n*0.01*b1)^2);
end
for n=1:N
fg2=fg2+(K1^(2*n-1)/(0.1*(z1-1)-2*a+2*(n-1)*0.01*b1)^2);
end
for n=N:N1
fg3=fg3+(K3*K1^(2*n)/(0.1*(z1-1)-2*n*0.01*b1)^2);
end
for n=1:N1
fg4=fg4+(K2*K1^(2*n-1)/(0.1*(z1-1)-2*a+2*n*0.01*b1)^2);
end
E1(z1,b1)=0.0000001/(4*pi*1)*(fg1+fg2+fg3-fg4);
end
end
[Z1,B1]=meshgrid(1:201,1:40);
surf(Z1,B1,E1);
运行完的提示:? Error using ==> surf at 70
Data dimensions must agree.
Error in ==> qiue at 26
surf(Z1,B1,E1);
原问题具体情况的地址是:http://zhidao.baidu.com/question/274193711.html
应该怎么编?谢谢!

寻Matlab达人.看看下面这段程序有错吗?为什运行完总是出错.function []=qiue(e,N1)K1=(1-e)/(1+e);K2=2/(1+e);K3=(2*e)/(1+e);E1=zeros(201,40);a=10;for z1=1:201 for b1=1:40 fg1=0;fg2=0;fg3=0;fg4=0;N=fix(a/(0.02*b1)+1);
[Z1,B1]=meshgrid(1:201,1:40);
这个命令得出的Z1和B1都是40行201列的矩阵,而你的E1则是201行40列的矩阵,只要把E1变成40行201列,或者把Z1和B1变成201行40列应该就可以了
surf(Z1,B1,E1);
这个命令要求Z1,B1,E1有相同的维数