欢迎来到天天文库
浏览记录
ID:30814169
大小:83.65 KB
页数:12页
时间:2019-01-04
《哈尔滨工程大学数字信号处理实验二》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验原理对离散时间傅里叶变换DTFT来说有两个问题:(1)DTFT的定义对无限长信号时有效的;(2)DTFT是连续变量w的函数。在MATLAB中,任何信号必须是有长度的,使(1)成为问题,当能从变换定义式推导出解析式并只是计算它,可以使用MATLAB计算无限长信号的DTFT。对于频率抽样问题,通常在有限网格点上选择足够多的频率一试绘出逼近真实的DTFT。最好的选择是在(-pi,pi)区间上一组均匀隔开的频率,如式3.11所示。在数量有限的频率点wk=2*pi*k/N出计算,并在有限范围内求和。要求N>=L。M
2、ATLAB的freqz函数足以应对无限长信号,但计算有限长信号的DTFT需用一个新的函数,dtft函数。对于无限长信号中的指数信号,其DTFT是exp(j*w)的有理函数。可以推导出
3、a
4、<1时h[n]=a^n*u[n]的DTFT表达式H(exp(j*w))=1/(1-a*exp(-j*w)),使用这一有理式容易计算这个DTFT的一组样本,分子和分母的计算都可以使用FFT,即计算有理式等同于做两个dtft函数计算,定义freqz函数[HH,WW]=freqz(b,a,N,'whole')。建立dtft函数如下
5、所示:function[H,W]=dtft(h,N)%UNTITLED2Summaryofthisfunctiongoeshere%DetailedexplanationgoeshereN=fix(N);L=length(h);h=h(:);if(N6、=fftshift(fft(h,N));在变换域上使用subplot绘制双子图,程序如下:>>formatcompact,subplot(111)>>a=0.88*exp(sqrt(-1)*2*pi/5);>>nn=0:40;xn=a.^nn;>>[X,W]=dtft(xn,128);>>subplot(211),plot(W/2/pi,abs(X));>>grid,title('MAGNITUDERESPONSE')>>xlabel('NORMALIZEDFREQUENCY'),ylabel('7、H(w)8、9、')>>subplot(212),plot(W/2/pi,180/pi*angle(X));grid>>xlabel('NORMALIZEDFREQUENCY'),ylabel('DEGREES')>>title('PHASERESPONSE')一、脉冲信号的DTFTa.证明3.12的矩形脉冲DTFT可由3.13数学表达式得出,改变换的第一项成为混叠函数。程序如下:>>formatcompact,subplot(111)%利用dtft函数求矩形序列的傅里叶变换,取N=200>>a=1;%并利用subplot将10、傅里叶变换的幅频特性和相频特性>>nn=0:19;xn=a.^nn;%在双子图上显示出来。>>[X,W]=dtft(xn,200);>>subplot(211),plot(W/2/pi,abs(X));>>grid,title('MAGNITUDERESPONSE')>>xlabel('NORMALIZEDFREQUENCY'),ylabel('11、H(w)12、')>>subplot(212),plot(W/2/pi,180/pi*angle(X));grid>>title('PHASERESPONSE')>>x13、label('NORMALIZEDFREQUENCY'),ylabel('DEGREES')图形显示如下:>>w=W;>>R=sin(w*20/2)./sin(w/2).*exp(-j.*w*19/2);%验证矩形序列的DTFT可由式3.13得出>>subplot(211),plot(w,abs(R));%并利用subplot将傅里叶变换的幅频特性>>xlabel('w'),ylabel('abs')%和相频特性在双子图上显示出来。>>subplot(212),plot(w,180/pi*angle(R));14、>>xlabel('w'),ylabel('phase')b.使用dtft函数计算12点脉冲信号的dtft。绘出在区间pi=>formatcompact,subplot(111)>>a=1;>>nn=0:11;xn=a.^nn;>>
6、=fftshift(fft(h,N));在变换域上使用subplot绘制双子图,程序如下:>>formatcompact,subplot(111)>>a=0.88*exp(sqrt(-1)*2*pi/5);>>nn=0:40;xn=a.^nn;>>[X,W]=dtft(xn,128);>>subplot(211),plot(W/2/pi,abs(X));>>grid,title('MAGNITUDERESPONSE')>>xlabel('NORMALIZEDFREQUENCY'),ylabel('
7、H(w)
8、
9、')>>subplot(212),plot(W/2/pi,180/pi*angle(X));grid>>xlabel('NORMALIZEDFREQUENCY'),ylabel('DEGREES')>>title('PHASERESPONSE')一、脉冲信号的DTFTa.证明3.12的矩形脉冲DTFT可由3.13数学表达式得出,改变换的第一项成为混叠函数。程序如下:>>formatcompact,subplot(111)%利用dtft函数求矩形序列的傅里叶变换,取N=200>>a=1;%并利用subplot将
10、傅里叶变换的幅频特性和相频特性>>nn=0:19;xn=a.^nn;%在双子图上显示出来。>>[X,W]=dtft(xn,200);>>subplot(211),plot(W/2/pi,abs(X));>>grid,title('MAGNITUDERESPONSE')>>xlabel('NORMALIZEDFREQUENCY'),ylabel('
11、H(w)
12、')>>subplot(212),plot(W/2/pi,180/pi*angle(X));grid>>title('PHASERESPONSE')>>x
13、label('NORMALIZEDFREQUENCY'),ylabel('DEGREES')图形显示如下:>>w=W;>>R=sin(w*20/2)./sin(w/2).*exp(-j.*w*19/2);%验证矩形序列的DTFT可由式3.13得出>>subplot(211),plot(w,abs(R));%并利用subplot将傅里叶变换的幅频特性>>xlabel('w'),ylabel('abs')%和相频特性在双子图上显示出来。>>subplot(212),plot(w,180/pi*angle(R));
14、>>xlabel('w'),ylabel('phase')b.使用dtft函数计算12点脉冲信号的dtft。绘出在区间pi=>formatcompact,subplot(111)>>a=1;>>nn=0:11;xn=a.^nn;>>
此文档下载收益归作者所有