[离散时间信号处理学习笔记] 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>& ...
随机推荐
- Java线程安全与锁优化
线程安全的严谨定义: 当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交题执行,也不需要进行额外的同步,或者调用方法进行其他任何操作,调用这个对象的行为都可以或者正确的结果,那么这 ...
- 基于vs2015的rdlc报表运行环境部署
先说明一下,rdlc报表是由visual studio来支持的,不是FM. 本次项目采用的是vs2015开发的,当中使用了ReportViewer报表. 两种方式可以支持开发rdlc报表环境: 1)在 ...
- 测试工具使用-Qunit单元测试使用过程
031302620 应课程要求写一篇单元测试工具的博客,但是暂时没用到java,所以不想使用junit(对各种类都不熟悉的也不好谈什么测试),原计划是要用phpunit,但是安装经历了三个小时,查阅各 ...
- Vue-校验props传来的值
对父组件传来的值进行校验. Vue.component('child',{ props:{ content:{ type:String, required:false, default:'li zha ...
- Wechart 饼图
预览 Preview | Usage Source | Pie Source | Tutorial Wechart by Cax Cax 众所周知 Cax 既能开发游戏.又能开发图表.本文将从饼图开始 ...
- python第三章:循环语句--小白博客
Python条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python程序语言指定任何非0和非 ...
- Create a toolwindow for the VBA editor with .NET(C#).
原始出处:http://www.cnblogs.com/Charltsing/p/VBEtoolwindow.html 最近有人问起使用C#在VBE插件中创建toolwindow的事情,由于VBE窗口 ...
- servlet程序HTTP Status 500 - Error instantiating servlet class 解决
在eclipase 中编译 servlet 但是一致报 HTTP Status 500 - Error instantiating servlet class XXX类 的问题 , 解决方法 1. ...
- 使用队列queue实现一个简单的生产者消费者模型
一.生产者消费者模型 我们去超市商店等地购买商品时,我们大部分人都会说自己是消费者,而超市的各大供货商.工厂等,自然而然地也就成了我们的生产者.如此一来,生产者有了,消费者也有了,那么将二者联系起来的 ...
- 一些Cassandra+YCSB异常
这两天一直在用YCSB.昨天还可以用的YCSB,今天在测试Cassandra时遇到问题了. 环境是在公用局域网的一台debian机器,YCSB和Cassandra都在这台机器上.异常是开始运行YCSB ...