资源描述:
《实验二离散傅立叶变换及谱分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验二离散傅立叶变换及谱分析三、实验步骤例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('Nmust
2、be>=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、本例验证采样定理令,绘制其傅立叶变换。用不同频率对其进行采样,分别画出离散时间傅立叶变换。(1)f=5k时,实验结果:(2)f=1k时,程序:Dt=0.00005;
3、%步长为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:5
4、01)];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时的程序T
5、s=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
6、');%该语句可以将引号中的内容放置在figure中的任何地方,只需%将十字的中心放在想放置内容的地方,然后按鼠标即可。ylabel('x1(n)');title('discretesignal');subplot(2,2,4);plot(w/pi,X);%画出离散时间傅立叶变换xlabel('frequency(radian)');%横坐标为弧度ylabel('x1(jw)');title('DTFT');实验结果:例4、本例说明补零序列的离散傅立叶变换序列,已给出序列的傅立叶变换程序和将原序列补零到10长序列的DFT。(1)补零到10
7、长,实验结果:(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('
8、X(ejw)
9、');%画出离散时间傅立叶变换N=20;x=[ones(1,5),zeros(1,N-5)];%将原序列补零为20长
10、序列n=0:1:N-1;X=dft(x,N);%进行DFTmagX=abs(X);k=(0:length(magX)'-1)*N/length(magX);subplot(3,2,3);ste