先推薦表格文章 如果看了此文你還不懂傅里葉變換,,那就過來掐死我吧【完整版】傅里葉原理表明:任何連續(xù)測量的時序或信號,,都可以表示為不同頻率的正弦波或余弦信號的無限疊加。
1.FT的理論就會告訴你可以通過傅里葉變化獲知這個頻率,。
但是這個信號飄蕩在空中,,你需要先通過采樣得到一個離散信號 (是采樣頻率,香農(nóng)和奈奎斯特告訴我們,,需要),。 2.得到離散信號后如何計算,DFT就會告訴你怎么辦; 3.你嫌DFT太慢了怎么辦,,F(xiàn)FT就粉墨登場了,。 一段matlab程序:
>> fs=1;
N=100; %頻率分辨率為fs/N=0.01Hz,,下面信號的頻率0.05是0.01的整數(shù)倍,即為整周期采樣 n=0:N-1;% n=0---99 t=n/fs; f0=0.05;%設(shè)定余弦信號頻率 x=cos(2*pi*f0*t+pi/3);%生成正弦信號 %FFT是余弦類變換,,最后得到的初始相位是余弦信號的初時相位,,在這里為0。如果信號 figure(1); % 調(diào)出第一張圖 %為x=sin(2*pi*f0*t);則初時相位應(yīng)該是-90度而非0度,。 subplot(211);% 表示subplot(m,n,p)有 m行 n列 第幾個圖 plot(t,x);%作余弦信號的時域波形 xlabel('t'); ylabel('y'); title('余弦信號 時域波形'); grid; %進行FFT變換并做頻譜圖 y=fft(x,N);%進行fft變換 mag=abs(y)*2/N;%求幅值 乘上后面的2/N得到正確幅值 f=(0:length(y)-1)'*fs/length(y);%進行對應(yīng)的頻率轉(zhuǎn)換 subplot(212); plot(f(1:N/2),mag(1:N/2));%做頻譜圖 xlabel('頻率(Hz)'); ylabel('幅值'); title('余弦信號 幅頻譜圖'); grid; angle(y(6))*180/pi %求信號初時相位,。頻率坐標f為[0 0.01 0.02 0.03 0.04 0.05 0.06 ...],所以譜線y中第6根譜線和信號x對應(yīng),。 ans = 60.0000 |
|
來自: imelee > 《復(fù)數(shù)》