[离散时间信号处理学习笔记] 10. z变换与LTI系统
我们前面讨论了z变换,其实也是为了利用z变换分析LTI系统。
利用z变换得到LTI系统的单位脉冲响应
对于用差分方程描述的LTI系统而言,z变换将十分有用。有如下形式的差分方程:
$\displaystyle{ y[n] = –\sum_{k=1}^{N}\left(\frac{a_k}{a_0}\right)y[n-k]+\sum_{k=0}^{M}\left(\frac{b_k}{a_0}\right)x[n-k] }$
我们可以通过z变换得到上述式子的单位脉冲响应。
等式两边进行z变换
$\begin{align*}
Y(z)
&=z\left\{-\sum_{k=1}^{N} \left( \frac{a_k}{a_0} \right)y[n-k]+\sum_{k=0}^{M}\left(\frac{b_k}{a_0}\right)x[n-k]\right\}\\
&=z\left\{-\sum_{k=1}^{N} \left( \frac{a_k}{a_0} \right)y[n-k]\right\}+z\left\{\sum_{k=0}^{M}\left(\frac{b_k}{a_0}\right)x[n-k]\right\}\quad z\ linearity\ property\\
&=-\sum_{k=1}^{N} \left( \frac{a_k}{a_0} \right)z^{-k}Y(z) + \sum_{k=0}^{M}\left(\frac{b_k}{a_0}\right)z^{-k}X(z) \quad z\ time\ shift\ property\\
\end{align*}$
整理后可以得到
$Y(z)=\left(\frac{\displaystyle{ \sum_{k=0}^{M}b_kz^{-k} }}{\displaystyle{\sum_{k=1}^{N}a_kz^{-k}}} \right )X(z)$
另外,我们知道LTI系统是通过卷积来定义的
$\displaystyle{ y[n] = h[n]*x[n] }$
等式两边进行z变换,可以得到
$Y(z) = H(z)X(z)$
因此有
$H(z) = \frac{\displaystyle{ \sum_{k=0}^{M}b_kz^{-k} }}{\displaystyle{\sum_{k=1}^{N}a_kz^{-k}}}$
我们对$H(z)$进行z逆变换即可得到单位脉冲响应$h[n]$。$H(z)$被称为系统函数。
因果LTI系统的一些z变换特性
此外,我们这里讨论的差分方程是因果的,即有
- 系统满足初始松弛条件,也就是说如果输入为$x[n]=0,n< 0$,有
$y[-N] = y[-N+1]=\cdot\cdot\cdot=y[-1]=0$
- 因果LTI系统的单位脉冲响应满足$h[n]=0,n<0$,那么系统函数$H(z)$的收敛域呈现$|z|>R$。
[离散时间信号处理学习笔记] 10. z变换与LTI系统的更多相关文章
- [离散时间信号处理学习笔记] 9. z变换性质
z变换描述 $x[n] \stackrel{\mathcal{Z}}{\longleftrightarrow}X(z) ,\quad ROC=R_x$ 序列$x[n]$经过z变换后得到复变函数$X(z ...
- [离散时间信号处理学习笔记] 7. z变换
z变换及其收敛域 回顾前面的文章,序列$x[n]$的傅里叶变换(实际上是DTFT,由于本书把它叫做序列的傅里叶变换,因此这里以及后面的文章也统一称DTFT为傅里叶变换)被定义为 $X(e^{j\ome ...
- [离散时间信号处理学习笔记] 3. 一些基本的LTI系统
首先我们需要先对离散时间系统进行概念上的回顾: $y[n] = T\{ x[n] \}$ 上面的式子表征了离散时间系统,也就是把输入序列$x[n]$,映射称为$y[n]$的输出序列. 不过上述式子也可 ...
- [离散时间信号处理学习笔记] 8. z逆变换
z逆变换的计算为下面的复数闭合曲线积分: $x[n] = \displaystyle{\frac{1}{2\pi j}}\oint_{C}X(z)z^{n-1}dz$ 式中$C$表示的是收敛域内的一条 ...
- thinkphp学习笔记10—看不懂的路由规则
原文:thinkphp学习笔记10-看不懂的路由规则 路由这部分貌似在实际工作中没有怎么设计过,只是在用默认的设置,在手册里面看到部分,艰涩难懂. 1.路由定义 要使用路由功能需要支持PATH_INF ...
- 《C++ Primer Plus》学习笔记10
<C++ Primer Plus>学习笔记10 <<<<<<<<<<<<<<<<<&l ...
- SQL反模式学习笔记10 取整错误
目标:使用小数取代整数 反模式:使用Float类型 根据IEEE754标识,float类型使用二进制格式编码实数数据. 缺点:(1)舍入的必要性: 并不是所有的十进制中描述的信息都能使用二进制存储,处 ...
- golang学习笔记10 beego api 用jwt验证auth2 token 获取解码信息
golang学习笔记10 beego api 用jwt验证auth2 token 获取解码信息 Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放 ...
- Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息
</pre>Spring MVC 学习笔记10 -- 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p>& ...
随机推荐
- Generative Adversarial Nets[EBGAN]
0. 背景 Junbo Zhao等人提出的"基于能量的GAN"网络,其将判别器视为一个能量函数而不需要明显的概率解释,该函数可以是一个可训练的损失函数.能量函数是将靠近真实数据流形 ...
- C之attribute用法
GNU C 的一大特色就是__attribute__ 机制.__attribute__ 可以设置函数属性(Function Attribute ).变量属性(Variable Attribute )和 ...
- UART、SPI和I2C详解
做单片机开发时UART,SPI和I2C都是我们最经常使用到的硬件接口,我收集了相关的具体材料对这三种接口进行了详细的解释. UART UART是一种通用串行数据总线,用于异步通信.该总线双向通信,可以 ...
- 美团面试(c++方向)
美团后台基本都是java,c++很少的 一面:(其实问了很多,但是很多不记得了) 1. mfc里边的句柄, Qt里边的信号和槽函数 2. c 程序的内存分布 3. 堆和栈的区别 4. ...
- Python-序列化模块-json-62
序列化模块 Eva_J 什么叫序列化——将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给? 现在我们能想到 ...
- Python_迭代器_35
迭代器 # l = [1,2,3]# 索引# 循环 for# for i in l:# i## for k in dic:# pass #可以被for循环的# list# dic# str# set# ...
- 使用matplotlib画饼图
import matplotlib.pyplot as pltx = [4, 9, 21, 55, 30, 18]labels = ['math', 'history', 'chemistry', ' ...
- Lombok 安装、入门以及使用
lombok 的官方网址:http://projectlombok.org/ lombok 安装 使用 lombok 是需要安装的,如果不安装,IDE 则无法解析 lombok 注解.先在官网下 ...
- remote:error:refusing to update checked out branc
参考网上的GIt服务器配置流程(http://blog.csdn.net/ice520301/article/details/6142503) 遇到了 http://www.cnblogs.com/c ...
- rbac组件权限按钮,菜单,可拔插
1.通用模板 overflow: auto; //在a和b模板中进行切换 a 模板 :左侧菜单跟随滚动条 b模板 左侧以及上不动 **** <!DOCTYPE html> <h ...