离散时间傅里叶变换Matlab实现
发布时间:2018-09-22 17:24,
浏览次数:1077
, 标签:
Matlab
一、代码实现
%%离散时间傅里叶变换DTFT
%若x(t)=cos(2*pi*t),取样时间为0.1s,得到一个32的有限序列,利用matlab计算他的DFT并画出图像; clear;
ts=0.1;%取样时间 fs=1/ts;%周期 N=32;%总取样次数 n=0:N-1; xn=cos(2*pi*n*ts);%取离散信号数据
stem(n,xn);%绘制时域取样图 title('时域取样图'); k=0:N-1; wn=exp(-j*2*pi/N); nk=n'*k;
wnnk=wn.^nk; xk=xn*wnnk; figure; subplot(2,1,1); stem(k*fs/N,abs(xk));
xlabel('幅频特性'); subplot(2,1,2); stem(k*fs/N,angle(xk)); xlabel('相频特性');
二、幅频特性
幅频特性就是指系统频率响应
的幅度随频率变化的曲线,幅度大的地方对应通带,也就是对应频率成分通过系统有较小衰减,幅度小的地方对应阻带,也就是对应频率成分通过系统有较大衰减,根据这个特性,可以用来观测比较滤波器的情况,观察其是否符合要求也就是作为
滤波器 的技术指标。
三、相频特性