2、ot(3,1,2);stem(n,xc,'.');grid;axis([0length(xc),01]);title('序列x(n)的周期延拓序列');xm=[xn(m+1:M)xn(1:m)];%产生圆周移位序列xm=x((n+m))NRN(n)xm=[xmzeros(1,N-length(xm))];subplot(3,1,3);stem(n,xm,'.');grid;axis([0length(xm),01]);title('圆周移位序列x(n+m)');二、利用MATLAB验证N点DFT的物理意义。试绘制出幅度频谱和相位频
3、谱,并分别计算N=8和N=16时的DFT。解:MATLAB程序清单如下:clf%清除所有的图形窗口N1=8;N2=16;%设置两种DFT的长度n=0:N1-1;k1=n;k2=0:N2-1;w=(0:2047)*2*pi/2048;Xw=(1-exp(-j*4*w))./(1-exp(-j*w));%对x(n)的频谱采样2048点xn=[n>=0&n<4];%产生序列x(n)Xk1=fft(xn,N1);%计算序列x(n)的8点DFTXk2=fft(xn,N2);%计算序列x(n)的16点DFTsubplot(3,1,1);plo
4、t(w/pi,abs(Xw));%绘制序列x(n)的DTFT的幅频曲线grid;title('序列x(n)的幅频曲线
5、X(e^{jomega})
6、');subplot(3,1,2);stem(k1*2/N1,abs(Xk1),'.');grid;title('序列x(n)的8点DFT');subplot(3,1,3);stem(k2,abs(Xk2),'.');grid;title('序列x(n)的16点DFT');%也可以利用MATLAB中的hold命令,将上述3个图形绘制在一个图中,程序如下:clf%清除所有的图形窗口N1=
7、8;N2=16;%设置两种DFT的长度n=0:N1-1;k1=n;k2=0:N2-1;w=(0:2047)*2*pi/2048;Xw=(1-exp(-j*4*w))./(1-exp(-j*w));%对x(n)的频谱采样2048点xn=[n>=0&n<4];%产生序列x(n)Xk1=fft(xn,N1);%计算序列x(n)的8点DFTXk2=fft(xn,N2);%计算序列x(n)的16点DFTplot(w/pi,abs(Xw));%绘制序列x(n)的DTFT的幅频曲线hold%保持当前的图形窗口H1=stem(k1*2/N1,ab
8、s(Xk1),'o');set(H1,'color','r')H2=stem(k2*2/N2,abs(Xk2),'*');set(H2,'color','k');%legend('
9、X(e^{jomega})
10、','X_1(k)','X_2(k)');上机练习题:已知一个12点的离散序列,要求:(1)利用MATLAB计算序列的12点离散傅立叶变换(DFT),并绘出它的幅度和相位图;(2)利用MATLAB计算序列的离散时间傅立叶变换(DTFT)并绘出它的幅度和相位图;(3)利用MATLAB的hold命令,将上述两张幅度频谱图合成一
11、张,进行比较,以验证是的抽样。三、验证DFT的共轭对称性分别以两个序列为例,验证序列的DFT的对称性质。程序略。四、利用MATLAB验证两个序列的线性卷积和圆周卷积的关系已知两个有限长序列:编写一个计算两个任意有限长序列的圆周卷积matlab程序,计算这两个序列以下几种情况的圆周卷积,并与这两个序列的线性卷积结果相比较:①⑤②⑥②⑨③⑩程序略。五、利用快速卷积法计算两个序列的卷积已知序列,试利用快速卷积法计算这两个序列的卷积。解:快速卷积法的计算框图如下所示:h(n)x(n)L点FFTL点IFFTL点FFTy(n)MATLAB程序
12、清单如下:Nx=15;Nh=20;n1=1:Nx-1;n2=0:Nh-1;xn=sin(0.4*n1).*(n1>=0&n1=0&n2