FFT与IFFT的问题
继续请教,我之前的问题都已经搞定了,现在我的信号通过MATLAB FFT在频域PLOT之后,我又用IFFT回到时域,可是跟之前的信号不是完全相符,请问,为什么会出现这种情况,还有出现这种情况的原因?谢谢[ 本帖最后由 eisenstange 于 2006-12-8 10:38 编辑 ] 可能是FFT点数不够,所以会有失真。 原帖由 eisenstange 于 2006-11-18 10:08 发表
可能是FFT点数不够,所以会有失真。
谢谢,我今天试了一下,的确是跟抽样点数有关,谢谢ls,这个问题我已经解决了,感谢回帖,感谢答疑
[ 本帖最后由 青蓝忘情水 于 2006-12-8 11:08 编辑 ] 把程序发来看一下 u=1;
U=fft(u);
H=I./U;
subplot(2,1,1)
plot(f,abs(H))
grid on
subplot(2,1,1)
plot(abs(ifft(U.*H)))
grid on
这个是我的程序,为什么IFFT后结果不对?请问我是不是什么地方没有考虑到? 原帖由 青蓝忘情水 于 2007-1-8 13:31 发表
u=1;
U=fft(u);
H=I./U;
subplot(2,1,1)
plot(f,abs(H))
grid on
subplot(2,1,1)
plot(abs(ifft(U.*H)))
grid on
这个是我的程序,为什么IFFT后结果不对?请问我是不是什么地方没有考虑到?
这个问题还没有解决么? 原帖由 eisenstange 于 2007-1-9 19:55 发表
这个问题还没有解决么?
:( :( :( 还没有。。。
我的新问题,阶跃函数怎样求FFT?
我直接用STEPFUN(t,t0),可是时间轴改如何定义呢?定义为从负无穷到正无穷吗? 阶跃函数应该没有频谱,傅立叶变换的前提条件是,信号能量有限,而且FFT的话,要先取主周期,然后再求蝶形算法,阶跃信号的主周期应该是无限长,你说呢?
:) :) 一个系统的输入是阶跃函数,然后已知系统在频域的传输函数,求在时域的输出。我是把阶跃函数求FFT,然后乘以频域传输函数,然后得到频域输出,然后用IFFT得到时域。如果阶跃函数没有FFT那我改怎么解决这个问题呀?$郁闷$ 我看书上有阶跃函数的傅立叶变换结果,但是用MATLAB直接FFT好像不对,不知道有谁能给我指点一下,谢谢 要不先手动进行傅里叶变换,然后把结果乘以冲击响应函数,然后再求逆变换。
阶跃函数的傅里叶变换的结果是 pi*delta(omiga)+1/j*omiga
页:
[1]
2