数字信号处理实验---Z变换及系统的零极点分析 Matlab代码

一.各种函数的用法

1.tf2zp函数:通常用于将传递函数(Transfer Function)转换为零极增益形式(ZPK form),转换前G(s) = num(s) / den(s),转换后G(s) = K * (s - z1) * (s - z2) * ... * (s - zn) / (s - p1) * (s - p2) * ... * (s - pn)

2.zp2tf函数:用于将零极增益形式(ZPK form)转换为传递函数(Transfer Function)形式。转换前G(s) = K * (s - z1) * (s - z2) * ... * (s - zn) / (s - p1) * (s - p2) * ... * (s - pn),转换后G(s) = num(s) / den(s)

3.tf2sos函数:用于将传递函数(Transfer Function)转换为其次数最低的分数形式(SOS form,即Sum-of-Squares form)。转换前,G(s) = num(s) / den(s),转换后G(s) = a0 + a1*s + a2*s^2 + b1*s + b2*s^2 + ...

4.sos2tf函数:用于将SOS形式(Sum-of-Squares form)转换为传递函数(Transfer Function)形式,转换前G(s) = a0 + a1*s + a2*s^2 + b1*s + b2*s^2 + ...转换后G(s) = num(s) / den(s),

5.sos2zp函数:用于将SOS形式(Sum-of-Squares form)转换为零极增益形式(Zero-Pole-Gain form),转换前G(s) = a0 + a1*s + a2*s^2 + b1*s + b2*s^2 + ...,转换后G(s) = K * (s - z1) * (s - z2) * ... * (s - zn) / (s - p1) * (s - p2) * ... * (s - pn)

6.zp2sos函数:一种从零极增益形式(ZPK form)转换为二次分式形式(SOS form)的转换函数。它接受系统函数的零-极点增益模型中零点向量z、极点向量p和增益系数k作为输入,并返回系统函数的二次分式模型的系数矩阵sos和增益系数g。转换前G(s) = K * (s - z1) * (s - z2) * ... * (s - zn) / (s - p1) * (s - p2) * ... * (s - pn),转换后G(s) = a0 + a1*s + a2*s^2 + b1*s + b2*s^2 + ...

7.ss2tf函数:用于将状态空间模型(State-Space model)转换为传递函数(Transfer Function)模型,转换前x' = Ax + Bu y = Cx + Du转换后G(s) = num(s) / den(s)

8.tf2ss函数:用于将传递函数(Transfer Function)模型转换为状态空间模型(State-Space model),转换前G(s) = num(s) / den(s),转换后x' = Ax + Bu y = Cx + Du

二、系统函数如下

试求出:

极点增益(zpk)模型,用公式编辑器写出其表达式;

极点留数(rpk)模型,用公式编辑器写出其表达式;

二次分式(sos)模型,用公式编辑器写出其表达式。

极点增益(zpk)模型

a=[-2,5.65,-2.88,0];

b=[1,-0.1,0.99,0.648];

z,p,k\]=tf2zp(a,b) %因式分解系统函数 ![](https://file.jishuzhan.net/article/1745692220553433089/d40fc678ea0228f08a9a806cadd86694.webp) 极点留数(rpk)模型 b=\[-2,5.65,-2.88,0\]; a=\[1,-0.1,0.99,0.648\]; \[r, p, c\] = residuez(b, a) %极点求留数 ![](https://file.jishuzhan.net/article/1745692220553433089/85b60ecdde81540e7768e953fe6701ee.webp) 二次分式(sos)模型 num =\[-2,5.65,-2.88\]; den =\[1,-0.1,0.99,0.648\]; \[A,B\]=tf2sos(num,den) %将系统传递函数转换为系统函数二次分式模型 ![](https://file.jishuzhan.net/article/1745692220553433089/6ee6cc8f0bb30d9b90303102cdeb4179.webp) 三.LTI的系统函数如下 ![](https://file.jishuzhan.net/article/1745692220553433089/e06e7ed2c3e1854c0444001d797e0c66.webp) 试分析: 系统的零极点分布,并绘图; 单位冲击响应,并绘图; 分析系统的稳定性; 求出系统的幅频特性和相频特性,并绘图。 a=\[0.83,-0.0664\]; b=\[1,-0.08,0,0,0,0,0,0,0,0,-0.763,0\]; subplot(2,2,1);zplane(a,b); ylabel('Im(z)');xlabel('Re(z)'); title('零极点分布图'); %零极点分布图 subplot(2,2,2); impz(a,b,200);title('系统单位冲激响应'); w = \[0:0.5:100\]\*pi/100; H = freqz(b,a,w); %系统的频率响应函数 magH = abs(H);phaH = angle(H); %取角度的绝对值 subplot(2,2,3);plot(w/pi,magH,'m'); xlabel('pi 单位频率'); ylabel('\|H\|'); title('幅值响应'); %系统的幅频响应 subplot(2,2,4); plot(w/pi,phaH,'r'); xlabel(' pi 单位频率'); ylabel('pi 弧度相位'); title('相位响应'); %系统的相频响应 ![](https://file.jishuzhan.net/article/1745692220553433089/0ca78b0fec7b6ea1f0231fcec0dbd952.webp)

相关推荐
s_little_monster3 分钟前
【Linux】进程信号的捕捉处理
linux·运维·服务器·经验分享·笔记·学习·学习方法
呵呵哒( ̄▽ ̄)"34 分钟前
线性代数:同解(1)
python·线性代数·机器学习
SweetCode40 分钟前
裴蜀定理:整数解的奥秘
数据结构·python·线性代数·算法·机器学习
CryptoPP1 小时前
springboot 对接马来西亚数据源API等多个国家的数据源
spring boot·后端·python·金融·区块链
xcLeigh1 小时前
OpenCV从零开始:30天掌握图像处理基础
图像处理·人工智能·python·opencv
大乔乔布斯1 小时前
AttributeError: module ‘smtplib‘ has no attribute ‘SMTP_SSL‘ 解决方法
python·bash·ssl
go_bai1 小时前
Linux环境基础开发工具——(2)vim
linux·开发语言·经验分享·笔记·vim·学习方法
明灯L1 小时前
《函数基础与内存机制深度剖析:从 return 语句到各类经典编程题详解》
经验分享·python·算法·链表·经典例题
databook1 小时前
不平衡样本数据的救星:数据再分配策略
python·机器学习·scikit-learn
碳基学AI1 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义免费下载方法
大数据·人工智能·python·gpt·算法·语言模型·集成学习