收藏 分享(赏)

基4-FFT算法编程.doc

上传人:精品资料 文档编号:10510703 上传时间:2019-11-24 格式:DOC 页数:6 大小:317.20KB
下载 相关 举报
基4-FFT算法编程.doc_第1页
第1页 / 共6页
基4-FFT算法编程.doc_第2页
第2页 / 共6页
基4-FFT算法编程.doc_第3页
第3页 / 共6页
基4-FFT算法编程.doc_第4页
第4页 / 共6页
基4-FFT算法编程.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、实 验 报 告课程名称: 数字信号处理 指导老师: 刘英 成绩:_实验名称: 基 4-FFT 算法编程 实验类型:_设计_ 同组学生姓名:_ _一、实验目的和要求FFT 是快速计算 DFT 的一类算法的总称。通过序列分解,用短序列的 DFT 代替长序列的 DFT,使得计算量大大下降。基 4-FFT 是混合基 FFT 的一个特例。通过编写基 4-FFT 算法程序,加深对 FFT 思路、算法结构的理解。二、实验内容和步骤编写 16 点基 4-FFT 算法的 MATLAB 程序(studentname.m 文件)。产生 16 点输入序列 x,出生年月日(8 位)+自己学号后八位产生 。算出 16 点

2、频谱序列 X,用 stem(X)显示频谱图形。三、主要仪器设备用 MATLAB。四、操作方法和实验步骤(参见“二、实验内容和步骤” )五、实验数据记录和处理5.1 基 4-FFT 算法思路、流图结构简述如下5.1.1. 算法思路:在时域上按 n 的特点对序列 x(n)进行不断的以 4 为基数的分组以及位序调整,进而通过2逐级的蝶形复合处理,间接地完成高点数 DFT 的计算,由此达到降低运算量以及节省存储空间的目的。令序列 x(n)的 N 点 DFT 结果为 X(k),且有 ,按 的结果对序列 x(n)分组如下:=4 ()4(0)()=(4) (0)()=41(0)()(1)()=(4+1) (

3、1)()=41(1)()(2)()=(4+2) (2)()=41(2)()(3)()=(4+3) (3)()=41(3)()041 01=41则有:()=(0)()+(1)()+2(2)()+3(3)()(+41)=(0)()(1)()2(2)()+3(3)()(+241)=(0)()(1)()+2(2)()3(3)()(+341)=(0)()+(1)()2(2)()3(3)()5.1.2 蝶形图如下:对于 N/4 个点继续进行分组和蝶形复合处理,由原序列 x(n)出发,完成位序调整后,经过 m 级蝶形复合便可求得序列 X(k)。总体过程如下图:3位 序调 整 第 1级 蝶形 复 合 第 2级

4、 蝶形 复 合 第 l级 蝶形 复 合第 m级 蝶形 复 合. .x(n) x0(k) x1(k) x2(k) Xl-1(k) xl(k) Xm-1(k) Xm(k)5.2 16 点基 4-FFT 算法的流图绘出如下(后面省略了系数-1,-j ,j,具体系数对应项见上一蝶形图)5.3 16 点基 4-FFT 算法的 MATLAB 程序(studentname.m)列出如下x=1,9,9,5,0,3,2,5,3,0,1,0,4,7,2,3;X=fft4_16(x);X1=fft(x);n=1:1:16;figure(1)stem(n,x,filled);title(Input Sequence)

5、;axis(0 17 0 10);-j-1-1j-j-1j-14figure(2)stem(n,X,filled);title(Output Sequence);axis(0 17 -20 60);figure(3)stem(n,X1,filled);title(Output FFT Sequence);axis(0 17 -20 60);function X=fft4_16(x)X=zeros(1,16); %初始化输出的频谱序列N=16; W=exp(-1j*2*pi/N); W4=dftmtx(4); %求出蝶形运算的系数矩阵x0=x(1);x(5);x(9);x(13); %先对原序列

6、进行位序调整x1=x(2);x(6);x(10);x(14);x2=x(3);x(7);x(11);x(15);x3=x(4);x(8);x(12);x(16);X0=W4*x0; %第一级蝶形运算X1=W4*x1;X2=W4*x2;X3=W4*x3;for k=0:3 %第二级蝶形运算t=W4*X0(k+1);(Wk)*X1(k+1);(W(2*k)*X2(k+1);(W(3*k)*X3(k+1);X(k+1)=t(1);X(k+4+1)=t(2);X(k+2*4+1)=t(3);X(k+3*4+1)=t(4);end5.4 用自己的学号构成的输入序列为(列出数值,插入图形)x1=1,9,9

7、,5,0,3,2,5,3,0,1,0,4,7,2,3;55.5 对应的输出频谱序列为(列出数值,插入图形)X = 54.0000 + 0.0000i 13.5682 - 6.7903i 1.4142 - 3.1716i -13.2930 -19.4368i -6.0000 - 6.0000i -2.0207 - 0.1231i -1.4142 + 8.8284i -6.2545 - 3.4765i -10.0000 - 0.0000i -6.2545 + 3.4765i -1.4142 - 8.8284i -2.0207 + 0.1231i-6.0000 + 6.0000i -13.2930 +19.4368i 1.4142 + 3.1716i 13.5682 + 6.7903i六、实验结果与分析61. 基 4-FFT 计算结果与 matlab 自带 fft 函数计算结果对比以下是 matlab 自带 fft 函数的计算结果由上述序列和图像比较可以看到,matlab 自带的函数 fft 所得结果与我的基于 4-FFT 算法和代码所得结果是一直的,说明我的基于 4-FFT 算法和代码是正确的,此外可以看出,基于 4 与基于 2(matlab )的 FFT 算法的运算结果是一致,即其本质是一致的。

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报