数字信号是处理傅里叶变换DFT论文.doc_第1页
数字信号是处理傅里叶变换DFT论文.doc_第2页
数字信号是处理傅里叶变换DFT论文.doc_第3页
数字信号是处理傅里叶变换DFT论文.doc_第4页
数字信号是处理傅里叶变换DFT论文.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字信号处理课程论文 DFT的应用 姓名:学号:专业:班级:指导老师:学院:完成日期:DFT的应用 (# 1201124 20 级 班)【摘要】傅里叶变换和Z变换是数字信号处理中常用的数学变换。对于有限长序列,还有一种更为重要的变换,即离散傅里叶变换(Discrete Fourier Transform,DFT)DFT的实质是有限长序列傅里叶变换的有限点离散采样,从而实现了频域离散化,使数字信号可以在频域采样数值运算的方法进行,这样就大大增加了数字处理的灵活性。更为重要的是,DFT有多种快速算法,统称为快速傅里叶变换(Fast Fourier Transform,FFT),从而使信号的实时处理和设备的简称得以实现。因此,时域离散系统的研究与应用在许多方面取代了传统的连续时间系统。所以说DFT不仅在理论上有重要意义,而且在各种信号的处理中亦起核心作用。 本文就DFT的定义与计算、DFT的MATLANB实现、DFT DET的应用展开相关问题的探讨。【关键字】 离散傅里叶级数变换 MATLANB的应用 DFT的应用 一:DFT的定义与计算 1:定义设序列x(n)长度为M,定义x(n)的N点DFT为式中,N称为离散傅里叶变换区间长度,要求N M。为书写简单,令 , 因此通常将N点DFT表示为定义X(k)的N点离散傅里叶逆变换(IDFT)为例1.1:x(n) , 分别计算x(n)的8点、16点DFT。解: x(n)的8点DFT为x(n)的16点DFT为程序运行结果;二:DFT的MATLAB实现 1:傅里叶原理变换概述: 设有连续时间周期信号,它的周期为T,角频率,且满足狄里赫利条件,则该周期信号可以展开成傅里叶级数,即可表示为一系列不同频率的正弦或复指数信号之和。傅里叶级数有三角形式和指数形式两种3。 1. 三角形式的傅里叶级数: 式中系数,称为傅里叶系数,可由下式求得: 2. 指数形式的傅里叶级数2: 式中系数称为傅里叶复系数,可由下式求得: 2:傅里叶变换及逆变换的MATLAB实现MATLAB 的Symbolic Math Toolbox 提供了能直接求解傅里叶变换及逆变换的函数Fourier()及Fourier()4。 1.1 fourier 变换 (1) F=fourier(f); (2) F=fourier(v); (3) F=fourier(f,u,v);说明: (1) F=fourier(f)是符号函数f 的Fourier 变换,缺省返回是关于的函数。如果 f=f(),则fourier 函数返回关于t 的函数。 (2)F=fourier(f,v)返回函数F 是关于符号对象v 的函数,而不是缺省的 (3)F=fourier(f,u,v)对关于u 的函数f 进行变换,返回函数F 是关于v 的函数。 1.2 fourier 逆变换 (1) f=ifourier(F); (2) f=ifourier(F,u); (3) f=ifourier(F,v,u);说明:(1) f=ifourier(F)中输入参量F是傅里叶变换的符号表达式,缺省为符号变量w的函数,输出参量f是F的傅里叶逆变换的符号表达式,缺省为符号变量x的函数。 (2)f=ifourier(F,u)中输入参量F是傅里叶变换的符号表达式,缺省为符号变量w的函数,输出参量f是F的傅里叶逆变换的符号表达式,为指定符号变量u的函数(3)f=ifourier(F,v,u)中输入参量F是傅里叶变换的符号表达式,为指定符号变量v的函数,输出参量f是F的傅里叶逆变换的符号表达式,缺省为符号变量u的函数。3.函数的傅里叶级数展开级变换 (1)函数fourierszai 傅里叶级数中的应用例:如图所示为金波整流波形,试求该波的傅里叶级数展开式 解:如图所示的波形中一个周期的表达式为:us=15sin100tv()采用函数fouriers()求解时,可取t= 1001,a=0,b=1001,k=5,求解程序如下:Syms t:Us=15sin(100);T=1001,a=1,b=1001;=fouriers(u,s,t,T,a,b,5);F程序运行结果如下:可见波形的傅里叶级数展开式为;Us=尽管MATLAB采用的是符号计算方式,但结果和手工计算完全一致。(2)离散傅里叶变换(DFT)广泛应用于信号分析,光谱和声谱分析,全息技术等各个领域中。但直接计算DFT的运算与变换的长度N的平方成正比,当N较大时,计算量太大。随着计算机技术的迅速发展,在计算机上进行离散傅里叶变换计算成为可能,特别是快速傅里叶变换(FFT)算法的出现,为傅里叶变换的应用创造了条件。例:给定数学函数: 取n=128时,试对t从0s1s采样,用FFT做快速傅里叶变换,绘制相应的振幅-频率图。在0s1s时间范围内采样128点,从而可以确定采样周期和采样频率。由于离散傅里叶变换时的下标应是0N-1,故在实际应用时下标应前移1。有考虑到对离散傅里叶变换来说,其振幅|F(k)|是关于N/2对称的,故只需k从0N/2即可。程序如下: N=128; % N为采样点数T=1; % 采样时间终点t=linspace(0,T,N); % 给出N个采样时间ti(i=1:N) x=12*sin(2*pi*10*t+pi/4)+5*cos(2*pi*40*t); %求个采样点样本值xdt=t(2)-t(1); %采样周期f=1/dt; %采样频率X=fft(x); %计算x的快速傅里叶变换xF=X(1:N/2+1); %F(k)=X(k)(k=1:N/2+1)f=f*(0:N/2)/N; %使频率轴f从零开始plot(f,abs(F),-*) %绘制振幅频率图xlabel(Frequency);ylabel(|F(k)| 运行程序所绘制的振幅频率图如图1所示。从图可以看出,在幅值曲线上有两个峰值点, 对应的频率为10Hz和40Hz,这正是给定函数中的两个频 图1. 振幅-频率图求X的快速傅里叶逆变换,并与原函数进行比较: ix=real(ifft(X); % 求逆变换,结果只取实部 plot(t,x,t,ix,:) % 逆变换结果和原函数的曲线 norm(x-ix) % 逆变换结果和原函数之间的距离 ans= 3.3457e-014 逆变换结果和原函数曲线如图2所示,可以看出两者一致。另外,逆变换结果和原函数之间的距离也近。 图2. FFT逆变换结果和原函数曲线比较 (3)傅里叶级数(fourierbn)的应用非常广泛,尤其是周期函数在大学物理、电路分析、模拟电路、及数学物理方程中都起着至关重要的作用。故傅里叶级数的展开以及求解变换是我们务必要掌握的。MATLAB为我们提供了求解这些问题的简单便捷的方法。在MATLAB中,进行傅里叶变换的函数是: fourier(f,x,t):求函数f(x)的傅里叶像函数F(t), Ifourier(F,t,x):求傅里叶级数F(t)的原函数f(x)例:求函数y=|x|的傅里叶变换及其逆变换程序如下: syms x t; % 定义符号变量x,t y=abs(x); % y等于绝对值x Ft=fourier(y,x,t) % 求y的傅里叶变换 Ft= -2/t2 fx=ifourier(Ft,t,x) % 求Ft的傅里叶逆变换 fx= x*(2*heaviside(x)-1) 结果中的Heaviside是一个MATLAB函数,数学上称为单位跳跃函数,其定义是: (1) (4)连续时间周期信号的傅里叶变换程序如下: t=0:0.1:40; % 定义变量t,且t的范围是0-40,其步长为0.1k=1000; % 定义变量kfor i=-k:k a(i+k+1)=sin(i*pi/2)/(i*pi); a(k+1)=0.5; x(i+k+1,:)=a(i+k+1)*exp(j*i*(t+1)*pi/2);endx=sum(x) % 对x进行求和plot(t,x) % 绘制t-x曲线其图形如图3所示 图3.连续时间周期信号傅里叶变换符号运算功能是MATLAB的一个特色,对于许多工程计算问题,MATLAB中及提供了数值和符号的运算方法。两者各有用途,数值计算方法能得到近似数值解,但不能给出解析解;符号方法能给出解析解,但结果一般比较复杂,且对问题的选择性强,很多问题无法用符号方法求解。在实际应用中,应根据问题性质灵活选择解决方案。 通过以上几个与级数相关的例子,可以总结以下几点; 1.基于MATLAB强大的运算,绘图功能,它可以将复杂的级数求解问题迅速的求解出来,在需要相应的图解时,可以编写程序很快的将图形绘制出来,给人以直观的感觉。2.sym函数可以用来定义符号变量,并且一次只能定义一个符号变量。它可以定义符号常量,使用符号常量进行代数运算时和数值常量进行的运算不同。3.MATLAB语言中的运算符号与数学中的运算符号不同,所以在编写程序的过程中一定要注意其符号。4.在级数展开中,一定要明白其调用格式中每一项所代表的含义,只有这样才能够正确的编写,操作。5.运算结果在命令窗口中显示出来,如果在语句的最后加分号,那么MATLAB仅仅执行赋值操作,不再显示运算的结果。在MATLAB语句后面可以加注释,用于解释或说明语句的含义,对语句处理结果不产生任何影响。注释以%号开头,后面是注释的内容。四课程体会 初步接触数字信号处理只有一个感觉就是挺难得,需要理解的内容比较多,尤其是在信号与系统理解的不是很透彻的前提下,上完一节课不及时复习下节课就很难听懂,认为DFT很难,所以后来随着课堂的认真听课,下课后的及时复习以及认真的做试验,真正的感受到了DFT 的魅力所在。 通过这一次的课程设计有很多的收获和感触。刚着手做课程设计时觉得没有思路,从何着手,于是,在网上搜索相关资料,但资料不是很多,就打开课本仔细的揣摩例题,看相关的知识点,实际写起来时渐渐地才感觉有了思绪。在高等数学及MATLAB程序设计和数字信号处理中中找到相关应用资料花费了很长的时间,但对书上的内容了解透彻了很多。在课程设计的过程中,进一步的领会验证了MATLAB语言的快捷性、简便性及专一性。无论是多么复杂的级数求解问题,用MATLAB求解都会变得很简单,但编程中若出现一个小小的错误,程序都不能运行,这就进一步对我们的耐心和细心有了严格的考验和要求。因此,通过此次编写程序,的确有不小的进步,这次的课程设计不仅是我加深了对数字信号处理的理解,更加深了对MATLAB的理解,而且使我对计算机有了更熟练的操作技巧,尤其是数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论