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