24小时热门版块排行榜    

CyRhmU.jpeg
查看: 724  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

060930115

铁虫 (初入文坛)

[求助] 帮忙修改Matlab中出现的错误

到a(7)之后就出不来了,是不是数组定义有问题呢?求教大神~~
clear all
s=0;
u1=0.5;
u2=0.01;

for h=0:0.1:20
   for z=0:0.1:h-0.1
       for r=0:0.1:5
     l1=(h-z)/(20-z)*sqrt((20-z)^2+(r^2));   
     l2=(20-h)/(20-z)*sqrt((20-z)^2+(r^2));
    s1=(exp(-u1*l1-u2*l2))*r/(l1*l2)^2;
    s=s+s1;

       end
    end  
      a(10h+1)=s;
  s=0;
end
h=0:0.1:20;
plot(h,a);
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z萝莉

银虫 (小有名气)

引用回帖:
4楼: Originally posted by csgt0 at 2012-06-19 10:28:47
小妹妹真是厉害啊!...

献丑了
做好自己该做的事
5楼2012-06-19 10:43:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

csgt0

荣誉版主 (著名写手)

彩色挂图

【答案】应助回帖

感谢参与,应助指数 +1
改成a(int16(10*h+1))=s;就可以了,确保是整数型
showmethemoney
2楼2012-06-19 09:45:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

z萝莉

银虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
060930115: 金币+10, ★★★★★最佳答案 2012-06-19 11:57:24
Sample Text将a(10*h+1)换成a(fix(10*h+1)),在matlab中矩阵的下表只能是正整数,不能是小数或实数。二楼说的那个是c++上的matlab没有这个函数。matlab为fix,就近取整数。图我已经画出来了,如面:


做好自己该做的事
3楼2012-06-19 10:15:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csgt0

荣誉版主 (著名写手)

彩色挂图

引用回帖:
3楼: Originally posted by z萝莉 at 2012-06-19 10:15:49
Sample Text将a(10*h+1)换成a(fix(10*h+1)),在matlab中矩阵的下表只能是正整数,不能是小数或实数。二楼说的那个是c++上的matlab没有这个函数。matlab为fix,就近取整数。图我已经画出来了,如面:
f5/e3/1615342_1 ...

小妹妹真是厉害啊!
showmethemoney
4楼2012-06-19 10:28:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见