实验二离散傅立叶变换及谱分析三、实验步骤例1、本例检验实序列的性质DFT[xec(n)]=Re[X(k)]DFT[xoc(n)]=Im[X(k)]设x(n)=10*(0.8).^n0=n=10将x(n)分解为共扼对称及共扼反对称部分实验结果:例2、本例为计算序列的圆周卷积程序,运行之前应在命令窗口输入x1,x2,N的值。程序:N=8;x1=[1,5,-2,1];x2=[2,2,1,-1];iflength(x1)Nerror('Nmustbe=thelengthofx1')endiflength(x2)Nerror('Nmustbe=thelengthofx2')endx1=[x1zeros(1,N-length(x1))];x2=[x2zeros(1,N-length(x2))];m=[0:1:N-1];x2=x2(mod(-m,N)+1);H=zeros(N,N);forn=1:1:NH(n,:)=cirshftt(x2,n-1,N);endy=x1*H'实验结果:y=21272-53-1例3、本例验证采样定理令||1000)(taetx,绘制其傅立叶变换)(jXa。用不同频率对其进行采样,分别画出离散时间傅立叶变换)(jeX。(1)f=5k时,实验结果:(2)f=1k时,程序:Dt=0.00005;%步长为0.00005st=-0.005:Dt:0.005;xa=exp(-1000*abs(t));%取时间从-0.005s到0.005s这段模拟信号Wmax=2*pi*2000;%信号最高频率为2*2000K=500;%频域正半轴取500个点进行计算k=0:1:K;W=k*Wmax/K;%求模拟角频率Xa=xa*exp(-j*t'*W)*Dt;%计算连续时间傅立叶变换(利用矩阵运算实现)Xa=real(Xa);%取实部W=[-fliplr(W),W(2:501)];%将角频率范围扩展为从-到+Xa=[fliplr(Xa),Xa(2:501)];subplot(2,2,1);plot(t*1000,xa);%画出模拟信号,横坐标为时间(毫秒),纵坐标为幅度xlabel('time(millisecond)');ylabel('xa(t)');title('anologsignal');subplot(2,2,2);plot(W/(2*pi*1000),Xa*1000);%画出连续时间傅立叶变换xlabel('frequency(kHZ)');%横坐标为频率(kHz)ylabel('xa(jw)');%纵坐标为幅度title('FT');%下面为采样频率5kHz时的程序Ts=0.001;%采样间隔为n=-25:1:25;x=exp(-1000*abs(n*Ts));%离散时间信号K=500;k=0:1:K;w=pi*k/K;%w为数字频率X=x*exp(-j*n'*w);%计算离散时间傅立叶变换(序列的傅立叶变换)X=real(X);w=[-fliplr(w),w(2:K+1)];X=[fliplr(X),X(2:K+1)];subplot(2,2,3);stem(n*Ts*1000,x);%画出采样信号(离散时间信号)xlabel('time(millisecond)');gtext('Ts=0.2ms');%该语句可以将引号中的内容放置在figure中的任何地方,只需%将十字的中心放在想放置内容的地方,然后按鼠标即可。ylabel('x1(n)');title('discretesignal');subplot(2,2,4);plot(w/pi,X);%画出离散时间傅立叶变换xlabel('frequency(radian)');%横坐标为弧度ylabel('x1(jw)');title('DTFT');实验结果:例4、本例说明补零序列的离散傅立叶变换序列)()(5nRnx,已给出序列的傅立叶变换程序和将原序列补零到10长序列的DFT。(1)补零到10长,实验结果:(2)补零到20长,程序:n=0:4;x=[ones(1,5)];%产生矩形序列k=0:999;w=(pi/500)*k;X=x*(exp(-j*pi/500)).^(n'*k);%计算离散时间傅立叶变换Xe=abs(X);%取模subplot(3,2,1);stem(n,x);ylabel('x(n)');%画出矩形序列subplot(3,2,2);plot(w/pi,Xe);ylabel('|X(ejw)|');%画出离散时间傅立叶变换N=20;x=[ones(1,5),zeros(1,N-5)];%将原序列补零为20长序列n=0:1:N-1;X=dft(x,N);%进行DFTmagX=abs(X);k=(0:length(magX)'-1)*N/length(magX);subplot(3,2,3);stem(n,x);ylabel('x(n)');%画出补零序列subplot(3,2,4);stem(k,magX);%画出DFT结果axis([0,20,0,5]);ylabel('|X(k)|');实验结果:例5、本题说明高密度谱和高分辨率谱之间的区别,高密度谱是信号补零后得到的,虽然谱线相当密但是因为信号有效长度不变,所以其分辨率也不变,因此还是很难看出信号的频谱成分。高分辨率谱是将信号有效长度加长,因此分辨率提高,可以看出信号的成分。有一个序列为)5.0cos()35.0cos(2)(nnnx(1)有10个有效采样点实验结果:(2)10长序列补零到40长程序:M=10;m=0:M-1;x=2*cos(0.35*pi*m)+cos(0.5*pi*m);N=40;n=0:N-1;x=[x,zeros(1,N-M)];subplot(2,1,1);stem(n,x);title('补零到40长序列');Y=dft(x,N);k1=0:N-1;w1=2*pi/N*k1;subplot(2,1,2);stem(w1/pi,abs(Y));title('补零到40长后信号的频谱');实验结果:(3)有40个有效采样点程序:M=40;n=0:M-1;x=2*cos(0.35*pi*n)+cos(0.5*pi*n);subplot(2,1,1);stem(n,x);title('有40个采样点的信号');Y=dft(x,M);k1=0:M-1;w1=2*pi/M*k1;subplot(2,1,2);stem(w1/pi,abs(Y));title('信号的频谱');实验结果: