离散傅里叶变其特性验证.docVIP

  • 9
  • 0
  • 约2.79万字
  • 约 6页
  • 2017-06-14 发布于河南
  • 举报
离散傅里叶变其特性验证

实验名:离散傅里叶变换及其特性验证 一、实验目的 1、掌握离散时间傅立叶变换(DTFT)的计算方法和编程技术。 2、掌握离散傅立叶变换(DFT)的计算方法和编程技术。 3、理解离散傅立叶变换(DFT)的性质并用MATLAB进行验证。 二、实验原理与计算方法 1、离散时间傅立叶变换 如果序列x(n)满足绝对可和的条件,即,则其离散时间傅立叶变换定义为: (1) 假设序列x(n)在(即不一定在[0, N-1])有N个样本,要估计下列各点上的X(ej?): 它们是[0,π]之间的(M+1)个等间隔频点,则(1)式可写成: (2) 将{x(nl)}和{X(ej?k)}分别排列成向量x和X,则有: X=Wx (3) 其中W是一个(M+1)×N维矩阵: 将{k}和{n}排成列向量,则 在MATLAB中,把序列和下标排成行向量,对(3)式取转置得: 其中nTk是一个N×(M+1)维矩阵。用MATLAB实现如下: k=[0:M]; n=[n1:n2]; X=x*(exp(-j*pi/M)).^(n’*k); 2、离散傅立叶变换 一个有限长序列的离散傅立叶变换对定义为: (4) (5) 以列向量x和X形式排列x(n)和X(k),则式(4)、(5)可写成: X=WNx 可由下面的MATLAB函数dft和idft实现离散傅立叶变换运算。 function [Xk] = dft(xn,N) % Computes Discrete Fourier Transform % ----------------------------------- % [Xk] = dft(xn,N) % Xk = DFT coeff. array over 0 = k = N-1 % xn = N-point finite-duration sequence % N = Length of DFT % n = [0:1:N-1]; % row vector for n k = [0:1:N-1]; % row vecor for k WN = exp(-j*2*pi/N); % Wn factor nk = n*k; % creates a N by N matrix of nk values WNnk = WN .^ nk; % DFT matrix Xk = xn * WNnk; % row vector for DFT coefficients function [xn] = idft(Xk,N) % Computes Inverse Discrete Transform % ----------------------------------- % [xn] = idft(Xk,N) % xn = N-point sequence over 0 = n = N-1 % Xk = DFT coeff. array over 0 = k = N-1 % N = length of DFT % n = [0:1:N-1]; % row vector for n k = [0:1:N-1]; % row vecor for k WN = exp(-j*2*pi/N); % Wn factor nk = n*k; % creates a N by N matrix of nk values WNnk = WN .^ (-nk); % IDFT matrix xn = (Xk * WNnk)/N; % row vector for IDFT values 3、离散傅立叶变换的性质 (1)线性性质: 注意:若x1(n)和x2(n)分别是N1点和

文档评论(0)

1亿VIP精品文档

相关文档