FFT变换及小波变换的仿真及应用 毕业论文.doc

上传人:小小飞 文档编号:3902138 上传时间:2019-10-09 格式:DOC 页数:35 大小:1.26MB
返回 下载 相关 举报
FFT变换及小波变换的仿真及应用 毕业论文.doc_第1页
第1页 / 共35页
FFT变换及小波变换的仿真及应用 毕业论文.doc_第2页
第2页 / 共35页
FFT变换及小波变换的仿真及应用 毕业论文.doc_第3页
第3页 / 共35页
FFT变换及小波变换的仿真及应用 毕业论文.doc_第4页
第4页 / 共35页
FFT变换及小波变换的仿真及应用 毕业论文.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《FFT变换及小波变换的仿真及应用 毕业论文.doc》由会员分享,可在线阅读,更多相关《FFT变换及小波变换的仿真及应用 毕业论文.doc(35页珍藏版)》请在三一文库上搜索。

1、毕 业 设 计(论 文)(2012届)题 目: FFT变换及小波变换的仿真及应用 学 院: 专 业: 电子信息工程 姓 名: 学 号: 指导教师: 教务处 制毕业设计(论文)摘要随着电力系统的快速发展,电力网容量不断增大,结构日趋复杂,电力系统中实时监控、调度的自动化就显得十分重要,而数据采集又是实现自动化的重要环节,尤其是如何准确、快速地采集系统中的各个模拟电量,一直是电力工作者关注的热点。交流采样实时性好、相位失真小、投资少、便于维护,因此越来越受到人们的重视。特别是随着计算机和集成电路技术的发展,交流采样原有的困难如算法复杂、提高精度难、对A/D的速度要求高等已逐步得到克服,所以它呈现出

2、取代直流采样的趋势。为此,本文介绍电力系统中常用的交流采样算法,如:均方根算法,递推最小二乘法,全周波傅里叶算法等等,并分析其特点,以便正确选择其使用场合。并且对FFT算法,小波变换以及近年才引入交流采样算法领域的BP神经网络算法进行较详细的描述和仿真实现。关键词:采样算法;FFT;小波变换;BP神经网络AbstractWith the rapid development of electric power system, power grid capacity is continuously increasing, and structure is complicated, electric

3、 power system in real-time monitoring, dispatching automation becomes very important, and a data acquisition and automation of the important link, especially how to accurately and rapidly acquisition system simulation of all power, has been the focus of electric power workers. Ac sample of good real

4、-time performance, phase distortion is small, less investment, easy to maintain, accordingly more and more attention by people. Especially along with the computer and integrated circuit technology development, the ac sample original difficult as complex algorithm and improve precision difficult, the

5、 speed of the A/D high demand has gradually be overcome, so it presents to replace the trend of the sampling dc. Therefore, this paper introduces the power system commonly used in ac sample algorithm such as root mean square algorithm, recursive least square method, all the ZhouBoFu leaves algorithm

6、 and so on, and analyzes its characteristics, to make the right choice to use the occasion. And in FFT algorithm, wavelet transform and in recent years was introduced into exchanges in the field of sampling algorithms BP neural network algorithm in detail description and simulation. Keywords: Sampli

7、ng algorithms; FFT; Wavelet transform; The BP neural network basedII毕业设计(论文)目 录摘要IAbstractII1前 言12 国内外FFT变换及小波变换算法现状22.1直流采样算法22.2交流采样的算法22.2.1正弦函数模型算法32.2.1.1 最大值算法32.2.1.2 单点算法32.2.1.3 半周期积分法42.2.1.4 2点采样42.2.2非正弦周期函数算法52.2.2.1 均方根法52.2.2.2 递推最小二乘算法52.2.2.3 全周波付里叶算法62.2.2.4 递推付里叶算法72.2.2.5 人工神经网络算

8、法73 几种主要的FFT变换及小波变换的详细介绍与实现93.1 FFT算法93.1.2直接计算DFT的问题及FFT思想93.1.3基2按时间抽取(DIT)的FFT算法93.1.4基2按频率抽取(DIF)的FFT算法113.1.5按频率抽取的FFT的特点123.1.6 matlab程序编写133.1.7 程序验证153.2小波变换173.2.1 连续小波变换173.2.2 离散二进小波变换183.2.3 小波变换的信号处理183.3 BP神经网络及其原理203.3.1 BP神经网络定义203.3.2 BP神经网络模型及其基本原理203.3.3 BP神经网络的主要功能213.3.4 BP网络的优点

9、以及局限性213.3.5 BP网络在FFT变换及小波变换采样中的应用223.3.5.1 问题的提出223.3.5.2 基于BP神经网络逼近函数223.3.5.3 不同频率下的逼近效果263.3.5.4 讨论274 结论28参考文献29致谢31毕业设计(论文)1前 言目前,我国电力事业得到蓬勃发展,从信息时代向智能时代发展,提出了智能电网概念。从发电、输电、变电、配电到用电等各环节都要实现智能监控,支撑智能电网的运行。为实现这一目标,FFT变换及小波变换的数据采集是必要内容,而其计算方法更是决定数据信息准确可靠的重要因素1。随着电力系统的快速发展,电力网容量不断增大,结构日趋复杂,电力系统中实时

10、监控、调度的自动化就显得十分重要,而数据采集又是实现自动化的重要环节,尤其是如何准确、快速地采集系统中的各个模拟电量,一直是电力工作者关注的热点。随着新型非线性负荷的大量增加,电力系统的电压和电流波形可能发生严重畸变,从而给系统带来大的“电网污染”。电力系统中电网数据的精确采集、数据处理、故障判断已成为电网正确运行的焦点之一。其中,FFT变换及小波变换的精确测量是最为关键的环节,根据这些参数才可判断电网的运行状态、运行质量,乃至于电网中的故障或隐患,因此如何快速、准确地采集和监控各种FFT变换及小波变换显得尤为重要6。所以,在供电系统的设计中,对谐波、负荷电流水平和功率因数等电网参数进行合理的

11、估算,并采取相应的措施(如加设滤波和无功补偿装置)是非常必要的。根据采样信号的不同,可分为直流采样和交流采样2大类。直流采样是把交流电压、电流信号转化为05V的直流电压,这种方法的主要优点是算法简单,便于滤波,但投资较大,维护复杂,无法实现实时信号采集,因而在电力系统中的应用受到限制。交流采样是把交流量转化为5V(或05V)的交流电压进行采集,主要优点是实时性好,相位失真小,投资少、便于维护;其缺点是算法复杂,精度难以提高,对A/D转换速度要求较高。随着微机技术的发展,交流采样以其优异的性能价格比,有逐步取代直流采样的趋势。2 国内外FFT变换及小波变换算法现状近几年来,随着通信技术和计算机技

12、术的发展,通信电源监控系统开始进入实用阶段。监控系统的主要功能是对设备进行监测、控制,而数据采集又是实现这一功能的最重要和最基本的环节,尤其是如何准确快速地采集各个模拟量,一直是人们所关注的问题。根据采样信号的不同,采样方法可分为直流采样和交流采样。2.1直流采样算法直流采样是采集经过变送器整流后的直流量,然后由/转换器送入主机,此方法软件设计简单、计算方便,对采样值只需作一次比例变换,即可得到被测量的数值,具有采样周期短的优点。因此,在监控系统发展初期,这一方法得到了广泛的应用。但直流采样方法存在着以下一些不足8:1)具有较大的时间延迟,难以及时反应被测量的突变,为了提高响应速度,变送器的时

13、间常数必须特殊设计,因而不宜普遍使用;2)变送器测量谐波有误差;3)监控系统的测量精度直接受变送器的精确度和稳定性的影响。鉴于以上原因,近年来交流采样技术得到了迅速的发展。与直流采样相比,交流采样法具有实时性好,相位失真小,便于维护的优点。其原有的一些缺点,比如算法复杂、精度难以提高、对/转换速度要求较高等等,随着微机技术的发展,也逐步得到了弥补。从通信电源监控系统的发展趋势来看,交流采样法正在逐步代替直流采样。2.2交流采样的算法 算法是采样的核心问题之一,而衡量一个算法的优劣的标准主要是精度和速度。对于通信电源监控系统来说,需要监测的量较多,对算法的准确程度要求较高,对于速度一般只要求跟上

14、系统的采样速度即可。交流采样的应用范围非常广泛,根据应用场合不同,其算法也有很多种,按照其模型函数,大致可分为正弦模型算法,非正弦周期模型算法。其中正弦模型算法主要有最大值算法、单点算法、半周期积分法、两点采样等;非正弦模型算法有均方根算法、付里叶算法等,各种算法都有其优缺点,在电力系统中的应用也不相同9。2.2.1正弦函数模型算法2.2.1.1 最大值算法假定正弦量为纯交流量,通过采集最大值即可得到有效值。设u=Um sin(t+u) (2-1)则 (2-2)式中Um同步采样得到的电压最大值。同样I= (2-3)2.2.1.2 单点算法这种算法适用于对称三相正弦电路,在某一时刻同时对三相线电

15、流和线电压采集1点,就可计算出各线电压和线电流有效值、各相有功及无功功率。U= (2-4)其中=t+)+ t+-120)+ t+120) =3-t+2)-COS(2t+2-240 )- COS2*(t+120) = =3 (2-5)同理 I=P=(-)+(-)+(-)Q=(+) (2-6)其中 (-)+(-)+(-)= cos(+30o)-cos(+150o)=3sin(+90o)sin60o=3 cos=9P (2-7) +=cos(-90o)=3 sin=3Q (2-8)2.2.1.3 半周期积分法设u=sint,T= (2-9)则A= (2-10)把积分离散化,有A= (2-11) (2

16、-12)其中N为半周期中采样点数。同理 (2-13)2.2.1.4 2点采样对正弦电压、电流,相差90采2组值。设u=则u1=u2= Um2=2U2 (2-14)又 (2-15)同理 (2-16)2.2.2非正弦周期函数算法2.2.2.1 均方根法 近年来的许多研究和实践表明,均方根法是用于监控系统交流采样的一种较好的方法。其基本思想是依据周期连续函数的有效值定义,将连续函数离散化,从而得出电压、电流的表达式: (2-17) (2-18)式中:N为每个周期均匀采样的点数; ui为第i点的电压采样值;ii为第i点的电流采样值。由连续周期函数的功率定义可得离散表达式为: (2-19)这种算法不仅对

17、正弦波有效,当采样点数多时,还可较准确的测量波形畸变的交流量。但当采样点数太多时,运算时间会明显增长,使响应速度有所下降。 2.2.2.2 递推最小二乘算法 在通信电源的实际运行中,电网存在谐波,同时还会有各种瞬时干扰,如高频开关干扰等,因此在编制交流采样软件时,一般均需与某种滤波算法相配合,才能达到较准确的测量各种正弦与非正弦交流信号的目的。递推最小二乘法是近年来提出来的一种较新的算法,利用这种算法,可以有效的从受干扰污染的输入信号中估计基波电压或基波电流复数振幅的实部和虚部,利用它们对电压、电流的有效值进行计算,同时利用电压相角的变化可以计算出频率30。假设无噪声的输入电压是角频率为w的正

18、弦波电压,则= = (2-20)式中x1= ;x2= 将(4)式用离散时间形式表示为=H(k)X(k) (2-21)于是,相应的递推最小二乘法的估计方程为:测量矩阵 (2-22)增益矩阵 (2-23)误差协方差矩阵P(k+1)=I-k(k+1)H(k+1)P(k) (2-24)递推矩阵的初始值可选为 (2-25)P(0)=C2I式中C2为一充分大的常数,通常取C2=104。在上述递推方程中,增益矩阵、误差协方差矩阵、与采样值无关,可事先求出,所以每次计算时实际上只需计算(6)式。由(6)式求出输入电压复数振幅的实部和虚部的估计值以后,将其变为有效值,分别用UR和UI表示,则输入电压的有效值为

19、(2-26)输入电流的有效值为 (2-27)2.2.2.3 全周波付里叶算法设u(t)为周期函数,并且满足狄里赫利条件,则U(t)可展开为级数。 ( n= 0 ,1 , 2 , ) ( n= 0 ,1 , 2 , ) (2-28) 离散化有 (2-29)其中N为采样点数,uk为第k次采样值。基波电压幅值 (2-30)2.2.2.4 递推付里叶算法参考全周波付氏算法,可得到递推计算各次谐波实部、虚部的表达式31 (2-31)递推开始时取 u(k-N)=0,当kN时再计及u(k-N),这种方法的计算数据仍是最近 1个周波的。基波电压以及有功功率和无功功率分别表示为U=P=(+)Q=(-) (2-3

20、2)2.2.2.5 人工神经网络算法 近年来,人工神经网络技术在电力电子领域获得了蓬勃的发展,在许多方面取得了令人鼓舞的成果。文献18提出了一种基于人工神经网络的交流采样算法,大量的实践证明:这种算法准确度高,其特性与傅氏算法相当,同时又具有最小二乘法的某些优点,是一个较有前途的算法29。人工神经网络算法的实质是一个对ADALINE神经网络的训练过程。设输入模式向量XK为 其中 为采样周期, 为角频率。很明显每个采样时刻所对应的输入模式向量都是不同的。设初始权向量为 (2-33)设算法的数据窗长度为n个采样周期。每个采样时刻所对应的输入模式向量与改时刻的实际采样值就组成了一个训练对。n个采样周

21、期就有n个训练对。这n个训练队就组成了ADALINE模型的训练集。其训练过程如下:利用第一个采样时刻所对应的输入模式向量和初始权向量按下式计算与第一个采样时刻所对应的模拟输出, (2-34)将该模拟输出与该时刻的实际采样值进行比较,得到与该时刻相对应的当前误差,进而利用下式对初始权向量进行修正; (2-35)然后利用第二个采样时刻所对应的输入模式相量和修正后的权向量按(2-34)式计算与第二个采样时刻所对应的模拟输出,将该模拟输出与第二个采样时刻的实际采样值进行比较,得到与该时刻相对应的当前误差,再利用(2-35)式对权向量进行第二次修正;以此类推,将训练集内各个训练对的输入模式向量相继作用与

22、网络,对权矩阵进行迭代改进。当一个训练周期结束后,按下式计算这一周期的总误差平方和 (2-36)然后利用这一周期最后得到的权向量调整值,重复进行新的一轮训练。直至前后两个训练周期得到的总误差平方和之差小于某允许值时(该值由所需准确度决定),结束迭代。当被采样的对象为电压信号时,则迭代收敛时的权值 和 即相当于递推最小二乘法中的UR和UI,则输入电压的有效值为 (2-37)当被采样的对象为电流信号时,则迭代收敛时的权值 和 即相当于递推最小二乘法中的IR和II,则输入电流的有效值为 (2-38)3 几种主要的FFT变换及小波变换的详细介绍与实现在电力系统参数采集,故障滤波,信号分析等方面,FFT

23、与小波变换有着举足轻重的作用,所以本文特别介绍其原理和仿真实现;近年来因为智能电网的提出,电网追求智能化,自动化,所以研究人员将BP神经网络算法引入电网的参数采集以及负荷预测等方面,取得了不错的效果,因此本文也重点讲述其相关原理以及仿真实现。3.1 FFT算法3.1.1IDFT定义对于有限长离散数字信号xn,0 n N-1,其离散谱Xk可以由离散付氏变换(DFT)求得。DFT的定义为:,k=0,1,N-1 (3-1)通常令,称为旋转因子。3.1.2直接计算DFT的问题及FFT思想由DFT的定义可以看出,在xn为复数序列的情况下,完全直接运算N点DFT需要N-1的2次方次复数乘法和N(N-1)次

24、加法。因此,对于一些相当大的N值(如1024)来说,直接计算它的DFT所作的计算量是很大的15。FFT的基本思想在于,将原有的N点序列分成两个较短的序列,这些序列的DFT可以很简单的组合起来得到原序列的DFT。例如,若N为偶数,将原有的N点序列分成两个(N/2)点序列,那么计算N点DFT将只需要约(N/2)2 2=N2/2次复数乘法。即比直接计算少作一半乘法。因子(N/2)2表示直接计算(N/2)点DFT所需要的乘法次数,而乘数2代表必须完成两个DFT。上述处理方法可以反复使用,即(N/2)点的DFT计算也可以化成两个(N/4)点的DFT(假定N/2为偶数),从而又少作一半的乘法。这样一级一级

25、的划分下去一直到最后就划分成两点的FFT运算的情况。3.1.3基2按时间抽取(DIT)的FFT算法设序列长度为,L为整数(如果序列长度不满足此条件,通过在后面补零让其满足)。将长度为的序列,先按n的奇偶分成两组: (r=0,1,N/2-1)DFT化为: 上式中利用了旋转因子的可约性,即:。又令,则上式可以写成: (k=0,1,N/2-1) (3-2)可以看出,分别为从中取出的N/2点偶数点和奇数点序列的N/2点DFT值,所以,一个N点序列的DFT可以用两个N/2点序列的DFT组合而成。但是,从上式可以看出,这样的组合仅表示出了前N/2点的DFT值,还需要继续利用表示的后半段本算法推导才完整。利

26、用旋转因子的周期性,有:,则后半段的DFT值表达式: (k=0,1,N/2-1) (3-3)所以后半段(k=N/2,N-1)的DFT值可以用前半段k值表达式获得,中间还利用到,得到后半段的值表达式为:(k=0,1,N/2-1)。这样,通过计算两个N/2点序列的N/2点DFT,可以组合得到N点序列的DFT值,其组合过程如图3-1所示。 -1 图3-1 时间抽取蝶形运算3.1.4基2按频率抽取(DIF)的FFT算法 设序列长度为,L为整数(如果序列长度不满足此条件,通过在后面补零让其满足)。在把按k的奇偶分组之前,把输入按n的顺序分成前后两半:因为,则有,所以:按k的奇偶来讨论,k为偶数时:k为奇

27、数时:前面已经推导过,所以上面的两个等式可以写为:通过上面的推导,的偶数点值和奇数点值分别可以由组合而成的N/2点的序列来求得,其中偶数点值为输入xn的前半段和后半段之和序列的N/2点DFT值,奇数点值为输入xn的前半段和后半段之差再与相乘序列的N/2点DFT值。令,则有:这样,也可以用两个N/2点DFT来组合成一个N点DFT,组合过程如图3-2所示。 -1 图3-2 频率抽取蝶形运算3.1.5按频率抽取的FFT的特点1)原位运算在DIF-FFT蝶形图中,取第m级且两输入节点分别在第k,j行的蝶形为例,讨论DIF-FFT的原位运算规律。由图可得蝶形运算的关系式可表示为=,= 。有上式可得的m-

28、1级的第k行与第j行的输出,在运算流图中的作用是,用来计算第m级的第k行和第j行的输出,这样当计算完,后,在运算流图中就不在起作用,因此可以采用原位运算,把,直接存入原来存放,的存储单元。同理可以把第m级蝶形的N个输出值直接存放在第m-1级蝶形输出的N个存储单元中,这样从第一级的输入x(n)开始到最后一级的输出X(k),只需要N个存储单元。2)蝶形运算两节点之间的“距离”第一级蝶形每个蝶形运算量节点的“距离”为4,第二级每个蝶形运算另节点的“距离”为2,第三级蝶形每个蝶形运算量节点的“距离”为1。依次类推:对于N等于2的L次方的DIF-FFT,可以得到第M级蝶形每个蝶形运算量节点的“距离”为2

29、的L-M次方。3)旋转因子的变化规律以8点的FFT为例,第一级蝶形,r=0,1,2;第二级蝶形,r=0,1;第三级的蝶形,r=0。依次类推,对于M级蝶形,旋转因子的指数为r=,J=0,1,2,3,这样就可以算出每一级的旋转因子。对于M级的任一蝶形运算所对应的旋转因子的指数,可以 如下方法得到:1将待求的蝶形输入节点中上面节点的行标号值k写成L位二进制数;2将此二进制数乘以2的M-1次方,即将L位二进制数左移M-1位,右边的空位补零,然后从低位到高位截取L位,即所得指数r所对应的二进制数。3.1.6 matlab程序编写FFT程序包括变址(倒位序)和L级递推计算(N=,L为正整数)两部分。1)变

30、址DIF-FFT是输出倒位序的变址处理,设x(i)表示存放自然顺序输入数据的内存单元,x(j)表示存放倒位序序数的内存单元,I、J=0,1,N-1,当I=J时,不用变址;当I J时,需要变址;但是当ij时,进行变址在先,故在IJ时,就不需要再变址了,否则变址两次等于不变。其中本程序使用的“反向进位加法”。也可以用bin2dec函数可以实现倒位序。2)L级递推计算整个L级递推过程由三个嵌套循环构成。外层的一个循环控制L(L=)级的顺序运算;内层的两个循环控制同一级(M相同)各蝶形结的运算,其中最内层循环控制同一种(即中的r相同)蝶形结的运算。其循环变量为I,I用来控制同一种蝶形结运算。其步进值为

31、蝶形结的间距值LE=,同一种蝶形结中参加运算的两节点的间距为LE1=点。第二层循环,其循环变量J用来控制计算不同种(系数不同)的碟形结,J的步进值为1。也可以看出,最内层循环完成每级的蝶形结运算,第二层循环则完成系数的运算。最外层循环,用循环变量M来控制运算的级数,M为1到L,步进值为1,当M改变时,则LE1,LE和系数U都会改变。MATLAB实现的代码:function Xk=DIF_FFT_2(xn,N);%本程序对输入序列实现DIF-FFT基2算法,点数取小于等于长度的2的幂次 N=8;n=log2(2nextpow2(length(xn); %求的x长度对应的2的最低幂次nN=2n;

32、if length(xn)N xn=xn,zeros(1,N-length(xn); %若长度不是2的幂,补0到2的整数幂 end %蝶形运算开始M=log2(N); %“级”的数量for m=0:M-1 %“级”循环开始 Num_of_Group=2m; %每一级中组的个数 Interval_of_Group=N/2m; %每一级中组与组之间的间距 Interval_of_Unit=N/2(m+1); %每一组中相关运算单元之间的间距 Cycle_Count= Interval_of_Unit -1; %每一组内的循环次数 Wn=exp(-j*2*pi/Interval_of_Group);

33、 %旋转因子 for g=1:Num_of_Group %“组”循环开始 Interval_1=(g-1)*Interval_of_Group; %第g组中蝶形运算变量1的偏移量 Interval_2=(g-1)*Interval_of_Group+Interval_of_Unit; %第g组中蝶形运算变量2的偏移量 for r=0:Cycle_Count; %“组内”循环开始 k=r+1; %“组内”序列的下标 xn(k+Interval_1)=xn(k+Interval_1)+xn(k+Interval_2);%第m级,第g组的蝶形运算式1 xn(k+Interval_2)=xn(k+In

34、terval_1)-xn(k+Interval_2)-xn(k+Interval_2)*Wnr; %第m级,第g组的蝶形运算式2 end endend%序列排序开始n1=fliplr(dec2bin(0:N-1);%码位倒置步骤1:将码位转换为二进制,再进行倒序n2=bin2dec(n1); %码位倒置步骤2:将码位转换为十进制后翻转for i=1:N Xk(i)=xn(n2(i)+1); %根据码位倒置的结果,将xn重新排序,存入Xk中EndFFT变换过程如图3-3所示。图3-3 FFT变换示意图3.1.7 程序验证编写主函数,在主函数中输入一个序列分别调用自己编写的FFT函数,和MATLA

35、B本身系统的FFT函数并比较两个结果是否相等,以判断自己编写的FFT程序是否正确26。xn=0:7;m=1:8;N=8x1=DIF_FFT(xn,N)x2=fft(xn)x3=abs(x1);x4=abs(x2);x5=angle(x1);x6=angle(x2);subplot(3,1,1)stem(m,xn);title(输入的离散序列)subplot(3,1,2)stem(m,x3);title(经过DIF_FFT后得到的频谱的幅度)subplot(3,1,3)stem(m,x5);title(经过DIF_FFT后得到的频谱的相位)figure (2)subplot(3,1,1)stem

36、(m,xn);title(输入的离散序列)subplot(3,1,2)stem(m,x4);title(经过库函数fft后得到的频谱的幅度)subplot(3,1,3)stem(m,x6);title(经过库函数fft后得到的频谱的相位)通过观察比较,得到的序列各点的值以及直观的通过图形,可以得到自己编写的DIF_FFT函数实现对序列进行FFT变换得到的结果与库函数FFT得到的结果是一样的。说明DIF_FFT子程序是正确的。从图中也可以看出有限长序列通过FFT后得到的频域为离散的。从理论讲,有限长序列经过离散傅里叶变换后,得到的频谱为离散的,从而也说明了FFT是DFT的优化方法,也属于DFT。

37、这个程序可以实现基2FFT,但是如果想在运行时直接输入要变换的点数就不行,必须在调用FFT函数前现将要算的序列定义好,这是这个程序的不足之处。但是该程序可以计算不是2的整数次幂的序列。所以在主程序中,输入序列必须给出才能进行FFT变换。当使用编写的程序进行8点的DIF-FFT计算时结果如下:xn=1 2 3 4 5 6 7 8;N=8;DIF_FFT(xn,N)Ans= Columns 1 through 636.0 -4.0000+9.6569i -4.0000+4.0000i -4.0000-1.6569i Columns 7 through 8-4.0000-4.0000i -4.0000-9.6569i当调用matlab自带的FFT程序进行相同的8点的FFT计算时结果如下:xn=1 2 3 4 5 6 7 8;fftxnAns= Columns 1 through 637.0 -4.0000+9.6569i -4.0000+4.0000i -4.0000-1.6569i Columns 7 through 8-4.0000-4.0000i -4.0000-9.6569i两者结果相同,故编写的程序正确。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1