实验三 基于MATLAB的离散时间信号的频域分析

Posted 毛_三月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验三 基于MATLAB的离散时间信号的频域分析相关的知识,希望对你有一定的参考价值。

一、实验目的:

1.掌握离散时间信号和系统的频域分析方法;
2.学会利用MATLAB函数对离散时间信号和系统的频域进行计算。

二、实验原理:

1.离散时间傅里叶变换(DTFT)

序列的离散时间傅里叶变换(DTFT)在这里插入图片描述定义为:
在这里插入图片描述

通常在这里插入图片描述是实变量Ω的复函数。实例程序演示如下:
【例3.1】求有限长序列在这里插入图片描述的DTFT,并画出它的幅度谱,相位谱,实部和虚部。

clear all
x=[1,2,3,4,5];
k=-1:3;
w=linspace(0,2*pi,512);
H=x*exp(-j*k'*w);
subplot(2,2,1);plot(w,abs(H));ylabel('幅度');     %画幅度特征曲线
subplot(2,2,2);plot(w,angle(H));ylabel('相角');   %画相位特征曲线
subplot(2,2,3);plot(w,real(H));ylabel('实部');    %画幅度实部特征曲线
subplot(2,2,4);plot(w,imag(H));ylabel('虚部');   %画幅度虚部特征曲线

其程序运行结果如下:
在这里插入图片描述

2.离散LTI系统的频率响应

利用MATLAB提供的freqz函数可以计算离散信号的频谱或离散系统频率响应的抽样值。若信号的频谱在这里插入图片描述表示为在这里插入图片描述的有理多项式
在这里插入图片描述则freqz函数其调用格式为:

  X=freqz(b,a,w)

其中,X为系统频谱,w是抽样的频率点,b和a分别为离散LTI系统的系统函数的H(z)的分子和分母多项式系数。
说明:不带输入向量时freqz函数将自动绘出频率响应的幅频和相频特性曲线。
【例3.2】已知离散系统的H(z)为:
在这里插入图片描述

试画出该系统的幅度响应。

程序如下:
clear all
b1=[0.5009 -1.0019 0.5009];
b2=[0.5320 1.0640 0.5320];
a1=[1 -0.8519 0.4167];
a2=[1 0.8519 0.4167];
b=conv(b1,b2);  %计算H(z)的分子多项式系数
a=conv(a1,a2);  %计算H(z)的分母多项式系数
w=linspace(0,pi,512);
h=freqz(b,a,w);	
plot(w/pi,abs(h));

运行结果:
在这里插入图片描述

3.对X(z)部分分式展开

MATLAB提供了计算序列z变换X(z)的部分分式展开函数,其调用格式为:
[r,p,k]=residuez(b,a)
其中, b和a分别为用在这里插入图片描述表示X(z)的分子和分母多项式的系数。 若 X(z)的部分分式展开为:
在这里插入图片描述

则residuez的返回参数r,p,k分别为
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

residuez也可以用于由 r,p,k计算在这里插入图片描述 表示X(z)的分子和分母多项式的系数,其调用格式为:

 [b,a]=residuez(r,p,k) 
  1. X(z)的零极点函数
    函数zplane可以画出X(z)的零极点坐标图,其调用格式是:

zplane(b,a)

[例3.3]试用MATLAB计算
在这里插入图片描述在这里插入图片描述的部分分式展开。并画出X(z)的零极点图。
程序如下:

clear all
b=[1.5,0.98,-2.608,1.2,-0.144];
a=[1,-1.4,0.6,-0.072];
[r,p,k]=residuez(b,a);
disp('留数');disp(r');
disp('极点');disp(p');
disp('常数');disp(k);
zplane(b,a);

程序的运行结果为:
留数
0.7000 0.5000 0.3000
极点
0.6000 0.6000 0.2000
常数
02
在这里插入图片描述

三、作业:

1.已知序列在这里插入图片描述

画出该序列DTFT在这里插入图片描述的实部、虚部、幅度谱和相位谱。并分析在这里插入图片描述
的特点。

clear all
k=-10:10;
x=cos(pi*k/20);
w=linspace(0,2*pi,512);
H=x*exp(-j*k'*w);
subplot(2,2,1);plot(w,abs(H));ylabel('幅度');     %画幅度特征曲线
subplot(2,2,2);plot(w,angle(H));ylabel('相角');   %画相位特征曲线
subplot(2,2,3);plot(w,real(H));ylabel('实部');    %画幅度实部特征曲线
subplot(2,2,4);plot(w,imag(H));ylabel('虚部');   %画幅度虚部特征曲线

2.利用MATLAB函数计算在这里插入图片描述的部分分式展开的各子系统的分子、分母多项式的系数。根据计算结果写出表达式。

clear all
b=[3,-7,-3,18];
a1=[1,-2];
a2=[1,-3];
a=conv(a1,a2);
[r,p,k]=residuez(b,a);
disp('留数');disp(r');
disp('极点');disp(p');
disp('常数');disp(k);
zplane(b,a);

留数
3.0000 -2.0000

极点
3.0000 2.0000

常数
2 3

在这里插入图片描述

3.离散稳定的LTI系统的差分方程为在这里插入图片描述,画出该系统的频率响应函数在这里插入图片描述,幅度谱在这里插入图片描述,相位谱在这里插入图片描述及其零极点图。

clear all
b=[1];	
a=[1,-10/3,1];
w=linspace(-pi,pi,512);
h=freqz(b,a,w);	
subplot(1,2,1);plot(w/pi,abs(h));ylabel('幅度');     %画幅度特征曲线
subplot(1,2,2);plot(w/pi,angle(h));ylabel('相角');   %画相位特征曲线
clear all
b=[1];
a=[1,-10/3,1];
[r,p,k]=residuez(b,a);
disp('留数');disp(r');
disp('极点');disp(p');
disp('常数');disp(k);
zplane(b,a);

更多相关文章点这里哦

数字信号处理----全套Matlab实验报告

通信工程(信息类,电子类,电气工程,自动化,计算机,软件工程,机电,等相关专业)全套学习指导

以上是关于实验三 基于MATLAB的离散时间信号的频域分析的主要内容,如果未能解决你的问题,请参考以下文章

全套完结信号与线性系统分析--Matlab实验报告手册建议保存

Python如何做离散信号分析?

在matlab中,如何对一个信号的频域进行分析,并画出频域图?

信号实验(03)连续时间系统的频域分析

信号实验(03)连续时间系统的频域分析

信号实验(03)连续时间系统的频域分析