基本上,我需要了解这段代码的作用(“块”是一个向量):
len = length(blocks);
currsum = sum(abs(blocks(i:1:len)));
我知道sum和abs的作用,它只是最后一部分,我知道它与循环有关,但是,它是否需要向量的特定部分并得到总和,或者,它是否总和整个向量?
答案 0 :(得分:4)
让我们把它分成几部分:
i:len
创建向量[i, i+1, i+2,.... len]
。回想一下,在Matlab中,运算符vec(indexes)
选择在索引中找到的向量元素。
blocks(i:len)
从第i个到最后一个获取最后的k个元素。
abs( blocks(i:len) )
最后k个元素的绝对值。
sum(abs(blocks(i:1:len)));
最后k个元素的绝对值之和。