第 1 页 共 14 页 实验三:离散时间信号的频域分析 一.实验目的 1.在学习了离散时间信号的时域分析的基础上,对这些信号在频域上进行分析,从而进一步研究它们的性质
2.熟悉离散时间序列的3 种表示方法:离散时间傅立叶变换(DTFT),离散傅立叶变换(DFT)和 Z 变换
二.实验相关知识准备 1.用到的MATLAB 命令 运算符和特殊字符: < >
^ 语言构造与调试: error function pause 基本函数: angle conj rem 数据分析和傅立叶变换函数: fft ifft max min 工具箱: freqz impz residuez zplane 三.实验内容 1. 离散傅立叶变换 在MATLAB 中,使用 fft 可以很容易地计算有限长序列 x[n]的离散傅立叶变换
此函数有两种形式: y=fft(x) y=fft(x,n) 求出时域信号x 的离散傅立叶变换 n 为规定的点数,n 的默认值为所给 x 的长度
当 n 取 2 的整数幂时变换的速度最快
通常取大于又最靠近 x 的幂次
(即一般在使用 fft 函数前用n=2^nextpow2(length(x)) 得到最合适的n)
第 2 页 共 14 页 当 x 的长度小于 n 时,fft 函数在 x 的尾部补 0,以构成长为 n 点数据
当 x 的长度大于 n 时,fft 函数将序列 x 截断,取前 n 点
一般情况下,fft 求出的函数多为复数,可用 abs 及 angle 分别求其幅度和相位
注意:栅栏效应,截断效应(频谱泄露和谱间干扰),混叠失真 例 3-1: fft 函数最通常的应用是计算信号的频谱
考虑一个由 100hz 和200hz 正弦信号构成的信号,受零均值随机信号的干扰,数据采样频率为 1000hz
通过 fft 函数来分析其信号频率成分