声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 9795|回复: 9

[综合讨论] DFT,FFT在MATLAB中的算法有什么区别?

[复制链接]
发表于 2008-10-17 08:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
老师给我们出了个作业,有两部分(都是计算傅里叶级数的系数):
part(1) Write a MATLAB scribe to solve for the Coefficients using a DFT.
part(2) Use MATLAB's FFT algorithm to solve for the coefficients.
我想问一下,这两部分有什么区别吗?
MATLAB中DFT不就是用FFT命令来计算吗?
摸不着头脑,恳请前辈指点,谢谢

本帖被以下淘专辑推荐:

回复
分享到:

使用道具 举报

发表于 2008-10-17 09:04 | 显示全部楼层
fft对信号长度有要求吧,如果不满足要求的时候可能就不是用fft做的了。
 楼主| 发表于 2008-10-17 09:16 | 显示全部楼层

回复 沙发 sogooda 的帖子

不是很明白,主任能否再说的详细一些?
发表于 2008-10-17 09:39 | 显示全部楼层
FFT是DFT的快速算法,和DFT还是有区别的。估计LZ是没有DFT的程序,MATLAB中也不带有该函数,但在有些书中能找到。现附上一个DFT的函数供参考:
function Xk=DFT(xn,N);
%  Discrete Fourier Transform
%
n=[0:N-1];
k=n;
Wn=exp(-j*2*pi/N);
nk=n'*k;
Wnnk=Wn.^nk;
Xk=xn*Wnnk;

评分

1

查看全部评分

 楼主| 发表于 2008-10-18 00:45 | 显示全部楼层

回复 地板 songzy41 的帖子

非常感谢,我这就试试去
发表于 2008-10-18 21:23 | 显示全部楼层
理论上是一样的,只是算法不同,如果结果不同,只能说明是算法不同引起的。
 楼主| 发表于 2008-10-20 22:45 | 显示全部楼层

回复 地板 songzy41 的帖子

函数建立并调用成功!
感谢songzy41!
发表于 2008-10-20 23:41 | 显示全部楼层
FFT是DFT的一种快速算法
1.FFT是通过DFT运算中存在对称性和周期性而做的化简。
2.FFT可以通过对时间参量或者频率参量不断分解为奇偶表达式,再做进一步改进,分别称为时间抽取法和频率抽取法。
3.matlab给出的FFT介绍实际是DFT的表达式,未作DFT向FFT的简化过程说明,但计算过程内核是FFT。(N=1024时FFT比DFT快一百多倍)
 楼主| 发表于 2008-10-20 23:46 | 显示全部楼层

回复 8楼 happy 的帖子

谢谢教授指点
发表于 2012-9-1 15:27 | 显示全部楼层
结果会一样吗?
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-28 08:58 , Processed in 0.063684 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表