信號處理之DFT、IDFT

1、DFT以前言部分函數

因爲matlab已提供了內部函數來計算DFT、IDFT,咱們只須要會調用fft、ifft函數就行;

2、函數說明:code

fft(x):計算N點的DFT。N是序列x的長度,即N=length(x);

fft(x,L):計算L點的DFT。若L<N,則將原序列x截短爲L點序列,再計算其L點的DFT;若L>N,則將原序列x補0至L點,而後經過計算其L點DFT。

ifft(X):計算N點的IDFT。N是序列x的長度,即N=length(X)。

ifft(X,L):計算L點的IDFT。若L<N,則將原序列x截短爲L點序列,再計算其L點的IDFT;若L>N,則將原序列x補0至L點,而後經過計算其L點IDFT。

N=30;
L=512;
f1=100;
f2=120;
fsam=600;
T=1/fsam;
wsam=2*pi*fsam;
t=(0:N-1)*T;

x=cos(2*pi*f1*t)+cos(2*pi*f2*t);
X=fft(x,L);
X1=fftshift(X);
w=(-wsam/2+(0:L-1)*wsam/L)/(2*pi);
plot(w,abs(X1));
ylabel('幅度值');
相關文章
相關標籤/搜索