在MATLAB中用FFT把時域訊號轉化為頻域訊號

2021-10-04 02:25:46 字數 701 閱讀 2796

matlab例項

fe=12800;%取樣頻率

n=1280;%取樣點數

dt=1/fe;%時間間隔

t=0:dt:(n-1)dt;

a=sin(2pi960t)+sin(2pi1200t)+sin(2pi1040t);%訊號

ph2=(fft(a)); %a為時域信,作fft變換

%下面為幅值修正

p2 = (ph2/n);

p1 = p2(1:n/2+1);%此時選取前半部分,因為fft之後為對稱的雙邊譜

p1(2:end-1) = 2*p1(2:end-1);

%畫圖f = fe*(0:(n/2))/n;

plot(f,abs(p1))

title(『時域訊號』)

xlabel(『f (hz)』)

ylabel(』|p1(f)|』)

對比時域訊號圖和頻域訊號圖:

可以實現由時域訊號轉換為頻域訊號,頻域圖中峰值所在頻率與程式中訊號a中設定的一致。

FFT和Matlab中操作FFT

fft 離散傅氏變換的快速演算法 fft fast fourier transformation 是離散傅氏變換 dft 的快速演算法。即快速傅氏變換。輸入n 1個數,輸出n 1個數 意義不同 輸入是時域,輸出為頻域 輸出是 每個取樣點對應的振幅或者能量值 輸出值的第乙個對應直流分量的振幅,第二個值...

基於matlab的FFT分析

離散傅利葉變換dft的計算公式如下,fft為dft的一種快速演算法。n 64時 fs 100 取樣頻率 n 64 資料點數 n 0 n 1 抽樣間隔ts 1 fs,所以t n ts n fs為時間序列 t n fs 時間序列 x 0.5 sin 2 pi 15 t 2 sin 2 pi 40 t y...

matlab的fft譜振幅

對應的是真實的單邊譜的振幅,這裡的真實值指的是訊號的幅度 如果除以n,則對應雙邊譜的振幅。其實,直接傅利葉變換對應的積分什麼也不用除,當然抽樣定理 要乘以抽樣的週期才是對應原函式的積分值。雙邊的幅度譜除以了取樣點數n,0.01頻率真實的譜分量為2 pi,下圖最高的為 2 pi 2,設定的引數 100...