我们前面讨论了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系统的更多相关文章

  1. [离散时间信号处理学习笔记] 9. z变换性质

    z变换描述 $x[n] \stackrel{\mathcal{Z}}{\longleftrightarrow}X(z) ,\quad ROC=R_x$ 序列$x[n]$经过z变换后得到复变函数$X(z ...

  2. [离散时间信号处理学习笔记] 7. z变换

    z变换及其收敛域 回顾前面的文章,序列$x[n]$的傅里叶变换(实际上是DTFT,由于本书把它叫做序列的傅里叶变换,因此这里以及后面的文章也统一称DTFT为傅里叶变换)被定义为 $X(e^{j\ome ...

  3. [离散时间信号处理学习笔记] 3. 一些基本的LTI系统

    首先我们需要先对离散时间系统进行概念上的回顾: $y[n] = T\{ x[n] \}$ 上面的式子表征了离散时间系统,也就是把输入序列$x[n]$,映射称为$y[n]$的输出序列. 不过上述式子也可 ...

  4. [离散时间信号处理学习笔记] 8. z逆变换

    z逆变换的计算为下面的复数闭合曲线积分: $x[n] = \displaystyle{\frac{1}{2\pi j}}\oint_{C}X(z)z^{n-1}dz$ 式中$C$表示的是收敛域内的一条 ...

  5. thinkphp学习笔记10—看不懂的路由规则

    原文:thinkphp学习笔记10-看不懂的路由规则 路由这部分貌似在实际工作中没有怎么设计过,只是在用默认的设置,在手册里面看到部分,艰涩难懂. 1.路由定义 要使用路由功能需要支持PATH_INF ...

  6. 《C++ Primer Plus》学习笔记10

    <C++ Primer Plus>学习笔记10 <<<<<<<<<<<<<<<<<&l ...

  7. SQL反模式学习笔记10 取整错误

    目标:使用小数取代整数 反模式:使用Float类型 根据IEEE754标识,float类型使用二进制格式编码实数数据. 缺点:(1)舍入的必要性: 并不是所有的十进制中描述的信息都能使用二进制存储,处 ...

  8. golang学习笔记10 beego api 用jwt验证auth2 token 获取解码信息

    golang学习笔记10 beego api 用jwt验证auth2 token 获取解码信息 Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放 ...

  9. Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息

    </pre>Spring MVC 学习笔记10 -- 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p>& ...

随机推荐

  1. CC2541之串口调试PM2.5传感器

    1. CC2541通过串口和PM25设备PMS7003通信,串口9600波特率,手机APP显示数据一直是128,先检查蓝牙数据通路问题,数据通路没问题 2. 看下串口是否OK,串口也不通,看到宏定义Z ...

  2. JAVA里自定义注解来进行数据验证

    API开发中经常会遇到一些对请求数据进行验证的情况,这时候如果使用注解就有两个好处,一是验证逻辑和业务逻辑分离,代码清晰,二是验证逻辑可以轻松复用,只需要在要验证的地方加上注解就可以. Java提供了 ...

  3. eclipse 常用配置

    一.内置tomcat配置 解决eclipse 内置tomcat 与本地tomcat 端口冲突 传送门:http://www.cnblogs.com/tweet/p/7568979.html 二.字体设 ...

  4. VS2012添加数据库连接时报错,未能加载文件或程序集microsoft.sqlserver.management.sdk.sfc

    今天在VS2012中添加数据库连接时报错 未能加载文件或程序集microsoft.sqlserver.management.sdk.sfc,Version=11.0 查了很多资料,最后下载安装了Sha ...

  5. Python_每日习题_0005_三数排序

    # 题目: # 输入三个整数x,y,z,请把这三个数由大到小输出. # 程序分析: 练练手就随便找个排序算法实现一下,偷懒就直接调用函数. #方法一:排序 raw = [] for i in rang ...

  6. Imbalanced Array CodeForces - 817D (思维+单调栈)

    You are given an array a consisting of n elements. The imbalance value of some subsegment of this ar ...

  7. Python并发编程

    进程 相关概念 进程 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基本 ...

  8. SQL UPDATE with INNER JOIN

    mysql - SQL UPDATE with INNER JOIN - Stack Overflowhttps://stackoverflow.com/questions/14491042/sql- ...

  9. laravel服务容器

    laravel框架底层解析 本文参考陈昊<Laravel框架关键技术解析>,搭建一个属于自己的简化版服务容器.其中涉及到反射.自动加载,还是需要去了解一下. laravel服务容器 建立项 ...

  10. vue中的跨域问题

    https://segmentfault.com/a/1190000011072725(原文)   使用vue-axios和vue-resource解决vue中调用网易云接口跨域的问题 注(api很重 ...