一、Matlab的FFT函數
(1)函數的用法
Y = fft(x)
Y = fft(X,n)
Y = fft(X,n,dim)
(2)函數的定義
Y = fft(x) 和 y = ifft(X)分別用于實現正變換和逆變換,公式描述如下:
image.png
(3)函數描述
Y = fft(X)
用快速傅里葉變換 (FFT) 算法計算 X 的離散傅里葉變換 (DFT)。
·如果 X 是向量,則 fft(X) 返回該向量的傅里葉變換。
·如果 X 是矩陣,則 fft(X) 將 X 的各列視為向量,并返回每列的傅里葉變換。
·如果 X 是一個多維數組,則 fft(X) 將尺寸大小不等于 1 的第一個數組維度的值視為向量,并返回每個向量的傅里葉變換。
注意這里第一個尺寸不為1是指一個矩陣的第一個尺寸不為1的維。
比如一個矩陣是21,那么第一個尺寸不為1的維就是行(尺寸為2)。
X是 123表示第一個尺寸不為1的維就是列(尺寸為2)。
X為維數56*2的話,第一個尺寸不為1的維就是行(尺寸為5)。
Y = fft(X, n)
返回 n 點 DFT。如果未指定任何值,則 Y 的大小與 X 相同。
·如果 X 是向量且 X 的長度小于 n,則為 X 補上尾零以達到長度 n。
·如果 X 是向量且 X 的長度大于 n,則對 X 進行截斷以達到長度 n。
·如果 X 是矩陣,則每列的處理與在向量情況下相同。
·如果 X 為多維數組,則大小不等于 1 的第一個數組維度的處理與在向量情況下相同。
Y = fft(X, n, dim)
返回沿維度 dim 的傅里葉變換。例如,如果 X 是矩陣,則 fft(X,n,2) 返回每行的 n 點傅里葉變換。