实验三 Z变换、离散系统零极点分布和频率分析 一、 实验目的 学会运用 MATLAB 求离散时间信号的 z 变换和 z 反变换; 学会运用 MATLAB 分析离散时间系统的系统函数的零极点; 学会运用 MATLAB 分析系统函数的零极点分布与其时域特性的关系; 学会运用 MATLAB 进行离散时间系统的频率特性分析。 二、 实验仪器:电脑一台,MATLAB6.5 或更高级版本软件一套。 三、 实验原理及实例分析 (一)离散时间信号的 Z 变换 1.利用 MATLAB 实现 z 域的部分分式展开式 MATLAB 的信号处理工具箱提供了一个对 F(Z) 进行部分分式展开的函数 residuez(),其调用形式为: [r,p,k]=residuez(num,den) 式中,num 和 den 分别为F(Z) 的分子多项式和分母多项式的系数向量,r为部分分式的系数向量, p 为极点向量, k 为多项式的系数向量。 【实例 3-1】 利用 MATLAB 计算321431818)(zzzzF的部分分式展开式。 解:利用 MATLAB 计算部分分式展开式程序为 % 部分分式展开式的实现程序 num=[18]; den=[18 3 -4 -1]; [r,p,k]=residuez(num,den) 2.Z变换和 Z反变换 MATLAB的符号数学工具箱提供了计算Z变换的函数ztrans()和Z反变换的函数iztrans(),其调用形式为 )()(FiztransffztransF 上面两式中,右端的f 和F 分别为时域表示式和z 域表示式的符号表示,可应用函数sym 来实现,其调用格式为 AsymS 式中,A 为待分析的表示式的字符串,S 为符号化的数字或变量。 【实例 3-2】求(1)指数序列 nuan的Z 变换;(2) 2azazzF的Z 反变换。 解 (1)Z变换的MATLAB程序 % Z变换的程序实现 f=sym('a^n'); F=ztrans(f) 程序运行结果为: z/a/(z/a-1) 可以用simplify( )化简得到 : -z/(-z+a) (2)Z 反变换的MATLAB 程序 % Z反变换实现程序 F=sym('a*z/(z-a)^2'); f=iztrans(F) 程序运行结果为 f = a^n*n (二)系统函数的零极点分析 1 . 系统函数的零极点分布 离散时间系统的系统函数定义为系统零状态响应的z 变换与激励的z 变换之比,即 )()()(zXzYzH (3-1) 如果系统函数)(zH的有理函数表示式为: 11211121)(nnnnmmmmazazazabzbzbzbzH (3-2) 那么,在MATLAB 中系统函数的零极点就可通过函数roots 得到,也可借助函数tf2z p 得到,tf2z p 的语句...