看板 MATLAB 關於我們 聯絡資訊
大家好,最近必須把手邊的訊號用傅立葉轉換處理 無奈這方面還是不太熟,先用簡單的cos來嘗試 參考了網路上的教材,大致如下 Fs=10; %取樣頻率 T =1/Fs; %間隔時間 L =1000; %取樣點數 t =(0:L-1)*T; %時間向量 y = cos(t); Y = fft(y,L)/L; YY = fftshift(Y); f = Fs*linspace(0,1,L); %f軸 subplot(3,1,1) plot(t,y) subplot(3,1,2) plot(f,abs(YY(1:L))); subplot(3,1,3) plot(f,abs(Y(1:L))); 圖畫出來,frequency domain的座標怪怪的 cos(t)的脈衝應該發生在-1, 1,但是圖形顯示的位置一直不正確 還有請問 fftshift 和 fft 區別到底在哪裡呢? 如果我有一組長度3700的數據,每100為一週期 請問這組數據也能傅立葉轉換嗎? 可否用上述的編碼執行呢? 謝謝各位幫助了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 31.205.2.19 ※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1398885758.A.EFA.html ※ 編輯: RachelMcAdam (31.205.2.19), 05/01/2014 04:08:40
sin55688:help fftshift. Matlab內建的fft因為效率的關係,在frequ 05/01 16:53
sin55688:ency domain有做平移的動作。fftshift只是平移回我們習慣 05/01 16:54
sin55688:的位子。 05/01 16:55
RachelMcAdam:感謝樓上大大解答! 05/04 04:13