
时域抽取法FFT(DIT-FFT)算法的MATLAB实现
发布日期:2021-05-07 14:37:56
浏览次数:15
分类:技术文章
本文共 738 字,大约阅读时间需要 2 分钟。
(1)序列的倒序
function [X] = invertedorder(A)%invertedorder 序列时域抽取(倒序)% A-时域序列,X-时域抽取后的序列N=length(A);LH=N/2;j=LH;N1=N-2;X=A;for i=1:N1 if i>=j T=X(i+1); X(i+1)=X(j+1); X(j+1)=T; end K=LH; while j>=K j=j-K; K=K/2; end j=j+K;endend
(2)DIT-FFT算法
function [Xk] = DIT_FFT(xn,M)%DIT_FFT 序列长度为2^M的傅里叶变换% xn-时域序列,M=log2(N)N=2^M;Xk=invertedorder(xn);for l=1:M B=2^(l-1); for j=0:B-1 P=2^(M-l)*j; for k=j:2^l:N-1 WNP=exp(-1j*2*pi*P/N); T=Xk(k+1)+Xk(k+1+B)*WNP; Xk(k+1+B)=Xk(k+1)-Xk(k+1+B)*WNP; Xk(k+1)=T; end endendend
(3)验证
xn=0:7;M=3;Xk=DIT_FFT(xn,M)Xk1=fft(xn)
验证结果如下:
由图可看到,该上述两段代码计算的结果与MATLAB自带的函数计算结果相同,证明了这两段代码的正确性。
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月07日 11时56分09秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Ubuntu2004 向日葵安装笔记
2019-03-04
Ubuntu 安装后无法正常打开——进入grub安全命令行模式
2019-03-04
C/C++ new和delete使用注意事项
2019-03-04
Jmeter (一) ----环境搭建
2019-03-04
性能调优优化思路
2019-03-04
CodeBase(四)项目总结
2019-03-04
【ACM】HDU 5640 King‘s Cake
2019-03-04
java集合框架
2019-03-04
面向对象的三大特征
2019-03-04
SpringCloud和SprinBoot之间的关系
2019-03-04
奇怪的小东西
2019-03-04
剑指offer打卡Day14:数组中只出现一次的数字
2019-03-04
使用VSCode配合keil来编写Cortex-M程序
2019-03-04
电磁兼容的PCB设计(二)
2019-03-04
i.mx rt系列遇害笔记-----systick被gpio害了
2019-03-04
零输入响应与零状态响应响应
2019-03-04
工资核算
2019-03-04
【keras】利用LSTM做简单的时间序列预测
2019-03-04
绘图杂记【7】echarts / python 雷达图
2019-03-04
Python之GUI编程 实现界面化的词云图生成器.exe
2019-03-04