作业帮 > 综合 > 作业

请问下面的程序有错吗?matlab老是提示Error using stem (line 44) X must be sa

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/16 06:01:08
请问下面的程序有错吗?matlab老是提示Error using stem (line 44) X must be same length as Y.求指教
>> clf;
>> N=8;
>> n1=-N:-1;
>> c1=-4*j*sin(n1*pi/2)/pi^2/n1.^2;
>> c0=0;
>> n2=1:N;
>>c2=-4*j*sin(n2*pi/2)/ pi^2/n2.^2;
>> cn=[c1 c0 c2];
>> n=-N:N;
>> subplot(2,1,1);
>>stem(n,abs(cn)); ///就是这儿不通过
>> ylabel('Am ofCN');
>> subplot(2,1,2);
>>stem(n,angle(cn));
>> ylabel('phase ofCN');
>> xlabel('\omega/\omega0');
肯定是不对的.
c1=-4*j*sin(n1*pi/2)/pi^2/n1.^2;
c2=-4*j*sin(n2*pi/2)/ pi^2/n2.^2;
上面两句话,得到的是两个数 而不是两个向量,所以,n中只有3个元素,故肯定不与cn的长度相等.
上面的问题可以参考我以前回答的问题.连接如下:
再问: 请问怎么才能让它得到两个向量,我是新手,不知道该怎么改?谢谢!
再答: 改成如下即可: c1=-4*j*sin(n1*pi/2)./pi^2/n1.^2; c2=-4*j*sin(n2*pi/2)./ pi^2/n2.^2
再问: 这不是和原来的一样么?根本就没有改嘛!
再答: ?没改 你在仔细看看? c1=-4*j*sin(n1*pi/2)./pi^2./n1.^2; c2=-4*j*sin(n2*pi/2)./ pi^2./n2.^2 矩阵元素的运算和 矩阵运算是有区别的,矩阵元素的运算,在运算符号之前要加 . 而矩阵的运算就不加点了。