数字信号处理实验---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)

相关推荐
trayvontang1 小时前
Python虚拟环境与包管理工具(uv、Conda)
python·conda·uv·虚拟环境·miniconda·miniforge
伊织code1 小时前
pdfminer.six
python·pdf·图片·提取·文本·pdfminer·pdfminer.six
hqxstudying1 小时前
JAVA项目中邮件发送功能
java·开发语言·python·邮件
Q_Q5110082852 小时前
python的软件工程与项目管理课程组学习系统
spring boot·python·django·flask·node.js·php·软件工程
合作小小程序员小小店2 小时前
SDN安全开发环境中常见的框架,工具,第三方库,mininet常见指令介绍
python·安全·生成对抗网络·网络安全·网络攻击模型
后台开发者Ethan2 小时前
Python需要了解的一些知识
开发语言·人工智能·python
北京_宏哥2 小时前
Python零基础从入门到精通详细教程11 - python数据类型之数字(Number)-浮点型(float)详解
前端·python·面试
盼小辉丶3 小时前
PyTorch生成式人工智能——使用MusicGen生成音乐
pytorch·python·深度学习·生成模型
遗憾皆是温柔4 小时前
24. 什么是不可变对象,好处是什么
java·开发语言·面试·学习方法
HAPPY酷5 小时前
给纯小白的Python操作 PDF 笔记
开发语言·python·pdf