实验四离散时间系统的频域分析1.实验目的(1)理解和加深傅里叶变换的概念及其性质。(2)离散时间傅里叶变换(DTFT)的计算和基本性质。(3)离散傅里叶变换(DFT)的计算和基本性质。2.实验原理对离散时间信号进行频域分析,首先要对其进行傅里叶变换,通过得到的频谱函数进行分析。离散时间傅里叶变换(DTFT,Discrete-timeFourierTransform)是傅立叶变换的一种。它将以离散时间nT(其中,T为采样间隔)作为变量的函数(离散时间信号)f(nT)变换到连续的频域,即产生这个离散时间信号的连续频谱()iwFe,其频谱是连续周期的。设连续时间信号f(t)的采样信号为:()()()spnfttnTfnTd¥=-?=-å,并且其傅里叶变换为:()()(){}spniwtftfnTtnTdted¥¥-?=-?--=åòF。这就是采样序列f(nT)的DTFT::()()iwTinwTDTFTnFefnTe¥-=-?=å,为了方便,通常将采样间隔T归一化,则有:()()iwinwDTFTnFefne¥-=-?=å,该式即为信号f(n)的离散时间傅里叶变换。其逆变换为:()1()2iwDTFTinwFedwfneppp-=ò。离散傅里叶变换(DFT,Discrete-timeFourierTransform)是对离散周期信号的一种傅里叶变换,对于长度为有限长信号,则相当于对其周期延拓进行变换。在频域上,DFT的离散谱是对DTFT连续谱的等间隔采样。211200()()|()()DFTkDTFTkwNknTNNiiwTiwnTNnnFwFefnTefnTepp=----=====邋长度为N的有限长信号x(n),其N点离散傅里叶变换为:10()[()]()knNNnXkDFTxnxnW-===å。X(k)的离散傅里叶逆变换为:101()[()]()knNNkxnIDFTXkXkWN--===å。DTFT是对任意序列的傅里叶分析,它的频谱是一个连续函数;而DFT是把有限长序列作为周期序列的一个周期,对有限长序列的傅里叶分析,DFT的特点是无论在时域还是频域都是有限长序列。3.实验内容及其步骤(1)复习傅里叶变换的定义及其性质,加深理解。(2)熟悉离散时间傅里叶变换的概念及其性质。参考一:计算离散时间傅里叶变换,并绘制图形。已知有限长序列x(n)={1,2,3,4,5}。n=-1:3;x=1:5;k=0:500;w=(pi/500)*k;X=x*(exp(-j*2*pi/500)).^(n'*k);magX=abs(X);angX=angle(X);realX=real(X);imagX=imag(X);subplot(2,2,1);plot(w/pi,magX);grid;xlabel('');ylabel('模值');title('模值部分');subplot(2,2,2);plot(w/pi,angX);grid;xlabel('pi为单位');ylabel('弧度');title('相角部分');subplot(2,2,3);plot(w/pi,realX);grid;xlabel('');ylabel('实部');title('实部部分');subplot(2,2,4);plot(w/pi,imagX);grid;xlabel('pi为单位');ylabel('虚部');title('虚部部分');参考二:计算离散时间傅里叶变换。%EvaluationoftheDTFT2()10.6iwiwiweHee---+=+clf;%ComputethefrequencysamplesoftheDTFTw=-4*pi:8*pi/511:4*pi;num=[21];den=[1-0.6];h=freqz(num,den,w);%PlottheDTFTsubplot(2,1,1)plot(w/pi,real(h));gridtitle('RealpartofH(e^{j\omega})')xlabel('\omega/\pi');ylabel('Amplitude');subplot(2,1,2)plot(w/pi,imag(h));gridtitle('ImaginarypartofH(e^{j\omega})')xlabel('\omega/\pi');ylabel('Amplitude');pausesubplot(2,1,1)plot(w/pi,abs(h));gridtitle('MagnitudeSpectrum|H(e^{j\omega})|')xlabel('\omega/\pi');ylabel('Amplitude');subplot(2,1,2)plot(w/pi,angle(h));gridtitle('PhaseSpectrumarg[H(e^{j\omega})]')xlabel('\omega/\pi');ylabel('Phaseinradians');(3)熟悉离散傅里叶变换的概念及其性质参考一:x(n)=sin(n*pi/8)+sin(n*pi/4)是一个N=16的序列,计算其傅里叶变换。N=16;n=0:N-1;xn=sin(n*pi/8)+sin(n*pi/4);k=0:1:N-1;WN=exp(-j*2*pi/N);nk=n'*k;WNnk=WN.^nk;Xk=xn*WNnk;subplot(2,1,1);stem(n,xn);subplot(2,1,2);stem(k,abs(Xk));参考二:计算x(n)=8*(0.4).^n,n属于[0,20)的圆周移位2020()[(10)]()mnxnRnx=+。N=20;m=10;n=0:1:N-1;x=8*(0.4).^n;n1=mod((n+m),N);xm=x(n1+1);subplot(2,1,1);stem(n,x);title('originalsequence');xlabel('n');ylabel('x(n)');subplot(2,1,2);stem(n,xm);title('circularshiftequence');xlabel('n');ylabel('x((n+10))mod20');4.实验用MATLAB函数介绍在实验过程中,MATLAB函数命令plot,figure,stem,subplot,axis,gridon,xlabel,ylabel,title,clc,mod,freqz等在不同的情况下具体表述也有所不同,应该在实验中仔细体会其不同的含义。5.思考题(1)理解离散时间系统的频域分析,掌握和加深对傅立叶变换及其性质的理解。(2)计算一个N=12的序列x(n)=cos(n*pi/6)的离散时间傅里叶变换。N=12;n=0:N-1;k=0:1:N-1;x=cos(n*pi/6);X=x*(exp(-j*2*pi/N)).^(n'*k);subplot(2,1,1);stem(n,x);legend('x[n]');subplot(2,1,2);stem(n,abs(X));legend('X[k]');(3)求x1(n)=(0.8).^n,其中n属于[0,10]与x2(n)=(0.6).^n,并且n属于[0,18]的圆周卷积(N=20)。先构造一个计算圆周卷积的函数进行计算。functiony=circonv(x1,x2,N)iflength(x1)Nerror('Nshouldbiggerthanorequaltothelengthofx1!');endiflength(x2)Nerror('Nshouldbiggerthanorequaltothelengthofx2!');endx1=[x1,zeros(1,N-length(x1))];x2=[x2,zeros(1,N-length(x2))];m=0:1:N-1;H=zeros(N,N);forn=1:1:NH(n,:)=cirshift(x2,n-1,N);endy=x1*H';functiony=cirshift(x,m,N)iflength(x)Nerror('Nshouldbiggerthanorequaltothelengthofx!');endx=[xzeros(1,N-length(x))];n=0:1:N-1;n=mod(n-m,N);y=x(n+1);n1=0:10;x1=(0.8).^n1;n2=0:18;x2=(0.6).^n2;N=20;y=circonv(x1,x2,N);subplot(3,1,1);stem(n1,x1);legend('x1(n)');subplot(3,1,2);stem(n2,x2);legend('x2(n)');subplot(3,1,3);stem(0:N-1,y);legend('y(n)');6.实验报告要求(1)明确实验目的以及实验的原理。(2)通过实验内容分析离散时间信号的性质。(3)完成思考题的内容,对实验结果及其波形图进行分析对比,总结主要结论。