[问题] 偶函数进行fft计算

楼主: littlebee (啦啦 )   2016-08-13 21:10:46
大家好
在下刚学Matlab不久
有点问题想请教大家
最近要使用到用一串离散的偶函数点进行fft转换
预期得到的结果为只有实部的部分
但真正得到结果却都会出现虚部
例如:
a = [1 2 3 4 5 4 3 2 1];
A = fft(a);
结果A会有复数
但是如果是:
a = [1 2 3 4 5 4 3 2];
A = fft(a);
这样得到A的结果就不会有复数的部分
另外如果我的资料点更多(ex:1000点)
则得到的结果都会有复数出现
这是为什么呢???
作者: sunev (Veritas)   2016-08-13 22:54:00
help fft 看一下phase的定义
作者: mp19990920 (郝渴连)   2016-08-14 16:13:00
第1个有9个元素,固N=16,补7个0,非对称
作者: YoursEver (猪是妳)   2016-08-15 01:58:00
原po应留意fft的算法是八个点为单位计算,在点数不是8k个点的状况下,请直接照dft的公式另写function.
作者: sunev (Veritas)   2016-08-15 16:31:00
matlab 的fft可补点可不补点,偶函数不会转出复数和点数无关吧?
作者: buttleliu (Techie)   2016-08-15 23:00:00
DFT第一点是原点,case1原点左1右2不对称自然有虚数

Links booklink

Contact Us: admin [ a t ] ucptt.com