用matlab的diag函数怎么去表达下面这个式子,用一个循环表示出来。

这里的a=0.9 m是从第一项到64项

第1个回答  2014-03-11
代码如下:

a = 0.9;
w = ones(64, 1);
for n = 1 : 64
w(1 : n) = w(1 : n) * a;
end
Wn = diag(w);追问

这个对不对啊?我的对角矩阵对角线最下面的那个元素一直是1呀,那个公式上面还有一点不对,就是第二个等于号后面的Wm-1的系数应该乘以一个a,最下角永远是1

追答

这个得到的就是你那个式子里的Wn。
Wn的最下面一个元素确实是1.

相似回答