Re: [問題] ifft轉不回來?已回收
※ 引述《jack0820 (我想要P幣....Orz)》之銘言:
: 是這樣的
: 例如說我想要把sin波作fft
: 再對頻率f做圖的話應該可以得到sin波的fft頻譜圖
: 照理說如果我對fft之後的sin波做ifft這個動作之後
: 應該會得到原本的sin波才對
: 不過我不知道哪裡做錯或哪裡想錯了 @@"
: 能請大家幫我解惑一下嗎?
: 下面是我用sin波作的範例:
: t=linspace(-2,2,1024); %在時域-2~2間取1024個點
: x=sin(2*pi*t); % x是一個sin波
: X=fftshift(fft(x)/1024); % 把x做fft轉換
: f=linspace(-128,128,1024); % f是我要取的頻率區間
: plot(f,abs(X)) %此圖為sin的fft轉換對頻率f的做圖 (取絕對值)
: 到這邊都沒有問題
y要用未fftshift的值算回去 即
X1=(fft(x)/1024);
y=(ifft(X1)*1024);
畫出來plot (t,x,t,y)就一樣了
: y=ifftshift(ifft(X)); %把 X 做ifft並做shift
: plot(t,y) %將 ifft之後的 y 對t做圖
: 畫出來之後發現是很奇怪的圖
: 不是跟預期一樣的sin波圖
: 請問這到底怎麼回事呢? @@
: PS.有用help查ifft,不過看的不是很懂加上沒有類似例子
: 所以就上來問了~ 如果程式碼打的很糟糕還請多見諒了 @@"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.104.243
※ 編輯: aquain 來自: 61.224.104.243 (10/16 21:52)
→
10/17 00:07, , 1F
10/17 00:07, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章