尝试在matlab中访问索引越界错误

时间:2013-03-04 15:03:18

标签: matlab

我正在研究这段代码,但我无法弄清楚我哪里出错了 这是显示错误的代码的一部分:

sf_num=0; sf_den=0;a=0; o=0;
for i=1:512
    for j=1:512
        sf_num=sf_num+(w1(i,j)*o(i,j));
        a=a+(o(i,j)*o(i,j));
        b=b+(w1(i,j)*w1(i,j));
        sf_den = sqrt(sf_den + a*double(b));
    end
end  

这是错误:

Attempted to access o(1,2); index out of bounds because numel(o)=1.

Error in ==> dwtcode at 44
    sf_num=sf_num+(w1(i,j)*o(i,j));

1 个答案:

答案 0 :(得分:2)

您将o定义为:o=0使其成为标量,这意味着它只有1个元素。

您无法访问1,2的索引o,因为它没有那么多元素