前言:天文學家使用蘇黎世太陽黑子相對數將幾乎 300 年的太陽黑子的數量和大小製成**。對大約 1700 至 2000 年間的蘇黎世數繪圖。
load sunspot.dat為了更詳細地看太陽黑子活動的週期特性,將對前 50 年的資料繪圖。year = sunspot(:,1);
relnums = sunspot(:,2);
plot(year,relnums)
xlabel('year')
ylabel('zurich number')
title('sunspot data')
plot(year(1:50),relnums(1:50),'b.-');傅利葉變換是一種基礎的訊號處理工具,可確定資料中的頻率分量。使用xlabel('year')
ylabel('zurich number')
title('sunspot data')
fft
函式可獲取蘇黎世資料的傅利葉變換。刪除儲存資料總和的輸出的第乙個元素。繪製該輸出的其餘部分,其中包含復傅利葉係數關於實軸的映象影象。
y = fft(relnums);y(1) = ;
plot(y,'ro')
xlabel('real(y)')
ylabel('imag(y)')
title('fourier coefficients')
n = length(y);單獨的傅利葉係數難以解釋。計算係數更有意義的方法是計算其平方幅值,即計算冪。由於一半的係數在幅值中是重複的,因此您只需要對一半的係數計算冪。以頻率函式的形式繪製功率頻譜圖,以每年的週期數為測量單位。power = abs(y(1:floor(n/2))).^2; % power of first half of transform data
maxfreq = 1/2; % maximum frequency
freq = (1:n/2)/(n/2)*maxfreq; % equally spaced frequency grid
plot(freq,power)
xlabel('cycles/year')
ylabel('power')
period = 1./freq;太陽黑子活動發生的最大頻率低於每年一次。為了檢視更易解釋的週期活動,以週期函式形式繪製冪圖,以每週期的年數為測量單位。該繪圖揭示了太陽黑子活動約每 11 年出現一次高峰。plot(period,power);
xlim([0 50]); %zoom in on max power
xlabel('years/cycle')
ylabel('power')
基於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的分析總結
1 取樣頻率和取樣週期的設定 取樣頻率的設定應滿足奈奎斯特準則,當取樣頻率設定之後求倒數即為取樣週期。如 fs 1000 sampling frequency 取樣頻率 t 1 fs sampling period 取樣週期 2 取樣點數的確定 若想要規定取樣點數,則採用如下方式 l 1000 le...
MATLAB中FFT使用方法
說明 以下資源 於 數字訊號處理的matlab實現 萬永革主編 一.呼叫方法 x fft x x fft x,n x ifft x x ifft x,n 用matlab進行譜分析時注意 1 函式fft返回值的資料結構具有對稱性。例 n 8 n 0 n 1 xn 4 3 2 6 7 8 9 0 xk ...