基4fft原理及matlab实现

上传人:shug****ng1 文档编号:153854044 上传时间:2022-09-19 格式:DOCX 页数:7 大小:121.96KB
收藏 版权申诉 举报 下载
基4fft原理及matlab实现_第1页
第1页 / 共7页
基4fft原理及matlab实现_第2页
第2页 / 共7页
基4fft原理及matlab实现_第3页
第3页 / 共7页
资源描述:

《基4fft原理及matlab实现》由会员分享,可在线阅读,更多相关《基4fft原理及matlab实现(7页珍藏版)》请在装配图网上搜索。

1、基4FFT原理及MATLAB实现一.时域抽取法基4FFT基本原理:有限长序列错误!未找到引用源。的N点DFT为:错误!未找到引用源。k=0,1,2,N-1设序列错误!未找到引用源。长度为N,且满足错误!未找到引用源。,M为自然数,可把错误!未找到引用源。按下列方法分解为4个长为N/4的子序列:错误!未找到引用源。r=0,1,,N/4-1错误!未找到引用源。r=0,1,,N/4-1错误!未找到引用源。r=0,1,,N/4-1错误!未找到引用源。则错误!未找到引用源。r=0,1,,N/4-1的DFT为X(k)二错误!未找到引用源。+错误!未找到引用源。二错误!未找到引用源。二错误!未找到引用源。因

2、为:错误!未找到引用源。所以:原式可表示为:X(k)=错误!未找到引用源。二错误!未找到引用源。其中:错误!未找到引用源。k=0,1,,N-1分别为错误!未找到引用源。的N/4点DFT,即:错误!未找到引用源。二错误!未找到引用源。错误!未找到引用源。错误!未找到引用源。错误!未找到引用源。错误!未找到引用源。错误!未找到引用源。错误!未找到引用源。由于错误!未找到引用源。均以N/4为周期,且有: 错误!未找到引用源。,错误!未找到引用源。,错误!未找到引用源。,错误!未找到引用源。所以:X(k)=错误!未找到引用源。k=0,1,N/4-1X(k+ N/4)二错误!未找到引用源。k=0,1,N

3、/4-1X(k+ 2N/4)二错误!未找到引用源。k=0,1,N/4-1X(k+ 3N/4)二错误!未找到引用源。k=0,1,N/4-1二.运算规律及编程思想:1. 按照上述分解法,再对错误!未找到引用源。进行反复分解,直到每个序列的 长度等于4为止,这个4点的DFT的数学表达式为:错误!未找到引用源。错误!未找到引用源。错误!未找到引用源。 错误!未找到 引用源。2. 旋转因子错误!未找到引用源。与运算级数的关系(参考数字信号处理(第三版) 西安电子科技大学出版社第115页)如下:P = J - 4m-l其中,L表示运算级数(L=1,2,M)(M二错误!未找到引用源。)(J=0,1,2, 错

4、误!未找到引用源。)错误!未找到引用源。,(错误!未找到引用源。0,1,2,错 误!未找到引用源。)3. 序列的倒序:与基2FFT的倒序相似(参考数字信号处理(第三版)西安电子科技大学出版社第116 页)由于错误!未找到引用源。,因此顺序数可用M位4进制数(错误!未找到引用 源。)表示。M次时域抽取如下:第一次按最低位错误!未找到引用源。的0,1,2,3将x(n)分解为4组,第二次 又按次低位错误!未找到引用源。的0,1,2,3值分别对上面所得的4组分组;以 此类推,第M次按错误!未找到引用源。位分解,最后得到4进制倒序数。最终 可以得到这样的规律:只要将顺序数(错误!未找到引用源。)的4进制

5、数倒置, 就能得到对应的4进制倒序数(错误!未找到引用源。)。4. 运算流程图:clc;clear;a=0:255;x=sin(2*pi/3*a)+sin(2*pi/4*a)+sin(2*pi/5*a)+sin(2*pi/6*a);%测试信号subplot(2,1,1),plot(x);axis(0 256 -3 3),title(时域信号波形);subplot(2,2,3),plot(abs(fft(x);axis(0 256 0 200),title(系统 FFT 计算出的频谱);N=256;%4点DFT分解级数%旋转因子L=log(N)/log(4);Wn=exp(-2j*pi/N);t

6、emp=zeros(1,N);n=0:N-1;%定义中间临时数组screen=ones(1,N);n=bitor(bitand(n,screen*hex2dec(cccc)/4,bitand(n,screen*hex2dec(3333)*4);n=bitor(bitand(n,screen*hex2dec(f0f0)/16,bitand(n,screen*hex2dec(0f0f)*16);n=bitor(bitand(n,screen*hex2dec(ff00)/256,bitand(n,screen*hex2dec(00ff)*256);n=n/4”(8-L)+1;for n1=1:Nte

7、mp(n(n1)=x(n1);endx=temp;for l=1:L%运算级循环group_cont_2=4”(LT);%第l级数据分组数group_cont_1=4”(LT+1);%第l-1级数据分组数group_interval_2=4 l;%第l级组间数据间隔个数,也是组内数据个数group_interval_1=4(l-1)%第l-1级组间数据间隔个数也是组内数据个数G=group_cont_2-1;%分组上限K=group_interval_1-1;%组内数据上限for g=0:G%每一级中包含的组循环,遍历每一组,计算各组中的数据for k0=0:K%遍历每一组中的所有数据,计算次

8、级数据k=k0+g*group_interval_2+1; %每组数据中第一个数据序号m=group_cont_2*k0;%每一级所乘旋转因子的指数因子k1=k;k2=k1+group_interval_1;k3=k2+group_interval_1;k4 =k3+group_interval_1;X1=x(k1);X2=Wnm*x(k2);X3=Wn (2*m)*x(k3);X4=Wn(3*m)*x(k4);temp(k1)=X1+X2+X3+X4;temp(k2)=X1-1j*X2-X3+1j*X4;temp(k3)=X1-X2+X3-X4;temp(k4)=X1+1j*X2-X3-1j

9、*X4;endendx=temp;%将temp中临时存储的第l级结果赋值给x,作为次级运算的输入endsubplot(2,2,4),plot(abs(x);axis(0 256 0 200),title(自定义基 4FFT 计算出的频谱);-3 0200时域信号波形210-1-250100150100501002000系统FFT计算出的频谱总结:通过对基4-fft的学习,我发现方法对提高运算速度的重要性,原始的方法 可能无法从工程上进行运用,但是提出改进的运算方法后才能在生活中发挥它的 应有的作用,所以一方面要理论研究,另一方面要工程运用。要做基4-fft算法, 首先的看懂基2-fft的方法,然后看基4-fft就容易些,主要就是因为旋转因子 具有周期性和对称性,利用这些性质减少计算量,提高运算速度。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!