xunxi 发表于 2009-12-5 23:22

MATLAB的一个循环错误出在哪里,请大家帮忙看看,谢谢

这个应该是10*10的循环啊,为什么结果是100*100呢,请高人解答!
function I=intension(x,y)
global x0 y0 I0 r0
I=I0*exp(-((x-x0)^2+(y-y0)^2)/r0^2);
-----------------------------------------------
global x0 y0 I0 r0
x0=50;y0=50;r0=30;I0=1;
for x=10:10:100, for y=10:10:100
   z(x,y)=intension(x,y);
end; end
size(z)

ans =

   100   100
如果变成X=1:10; Y=1:10;,那么结果就是Z 10*10了,错误到底在哪里呢

[ 本帖最后由 ChaChing 于 2009-12-6 00:18 编辑 ]

ChaChing 发表于 2009-12-6 00:17

当x=100; y=100;时, z(x,y)=intension(x,y);是将函数值赋值给z(100,100), 当然size为100*100

xunxi 发表于 2009-12-6 15:29

回复 沙发 ChaChing 的帖子

谢谢你,就是这样的,我已经改变了下
页: [1]
查看完整版本: MATLAB的一个循环错误出在哪里,请大家帮忙看看,谢谢