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('幅度值');