(数字信号处理)实验报告
实验名称 实验三 离散傅立叶变换及其特性验证
实验时间 年 月 日
专业班级 学 号 姓 名
成 绩 教师评语:
一、
实验目的
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(ejk)}分别排列成向量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点和N2点的序列,则选择N3= max (N1, N2),将它们作N3点DFT处理。
(2) 周期性:离散傅立叶变换(DFT)是周期序列DFS取主值区间形成的,因此序列
及其DFT
具有特性
和
。通常将结果
间的
量值表示在k的负值区间。
(3)对称性:实序列
的离散傅立叶变换可以表示为
,其中实部为偶对称,虚部为奇对称,幅值
为偶对称,相位
为奇对称。
根据上述关系,对于实序列
,则有
;对于纯虚序列
,则有
。
三、实验内容
(1)将实指数函数
抽样,取抽样周期为1/64,作64点DFT,并作出实部、虚部和幅频、相频特性曲线。
DFT函数代码:
function [Xk]=dft(xn,N)
n=[0:1:N-1];
k=[0:1:N-1];
WN=exp(-j*2*pi/N);
nk=n'*k;
WNnk=WN.^nk;
Xk=xn*WNnk;
主函数代码:
n=[0:1:63];
N=64;
T=1./N;
t=n.*T;
xn=exp(-t);
Xk=dft(xn,N)
a=imag(Xk)
b=real(Xk)
c=abs(Xk)
d=angle(Xk)
figure(1);stem(a,'.','r');title('实部特性曲线')
figure(2);stem(b,'.','r');title('虚部特性曲线')
figure(3);stem(c,'.','r');title('幅频特性曲线')
figure(4);stem(d,'.','r');title('相频特性曲线')
figure(5);stem(xn,'.','r');title('xn特性曲线')
试验截图:
(2)将图3-2中的两个连续函数抽样,取抽样周期为1/32,作64点DFT,验证前述的四种奇偶特性,并作出幅频和相频特性曲线。
A.
主函数为:
n=[0:32]
N=64
Ts=1./N
t=n.*Ts
xn=t
Xk=dft(xn,33)
subplot(4,1,1);stem(real(Xk),'.','b');title('实部特性曲线')
subplot(4,1,2);stem(imag(Xk),'.','b');title('虚部特性曲线')
subplot(4,1,3);stem(abs(Xk),'.','b');title('幅度特性曲线')
subplot(4,1,4);stem(angle(Xk),'.','b');title('相位特性曲线')
试验截图为:
B.
主函数为:
n=[0:32];
N=64;
Ts=1./N;
t=n.*Ts;
xn1=-t;
xn2=-t+2;
Xk1=dft(xn1,33);
Xk2=dft(xn2,33);
f=[Xk1,Xk2];
figure(1);stem(real(f),'p'); title('实部特性曲线')
figure(2);stem(imag(f),'p'); title('虚部特性曲线')
figure(3);stem(abs(f),'p'); title('幅度特性曲线')
figure(4);stem(angle(f),'p'); title('相位特性曲线')
试验截图为:
本文档为【matlab实验三 离散傅立叶变换及其特性验证】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。