Z变换的英语为Z-transform,他在数学和信号处理上,把一连串离散的实数或复数信号,从时域转为频域表示的方法。它在离散时间信号处理中的地位,如同拉普拉斯变换在连续时间信号处理中的地位一样重要。下面我们就讲解一下如何利用matlab实现Z变换。

1.Z变换的数学定义,下图是一个离散因果序列的Z变换及其反变换的数学定义。

blob.png

2.matlab提供的进行Z变幻的函数指令。涉及Z反变换具体计算的方法有三种:幂级数展开法、部分分式展开发和围线积分法。这里我们就介绍一种MATLAB中的SymbolicToolbox提供的基于围线积分法求取Z变换的指令:ztransiztrans。其具体调用语法和功能如下图所示。

FZ=ztrans(fn,n,z)    %求时域序列fnZ变换FZ

fz=iztrans(FZ,z,n)    %求频域序列FZZ反变换fn

3.简单的指令应用,对序列6(1-(1/2)^n)Z变换。如下图所示:

blob.png

4.对采样周期为T的正弦函数sin(ω·nT)序列的Z变换及其反变换。结果如下图所示:

blob.png

5.单位阶跃函数f(n)=1Z变换及其反变换,同样结果如下图所示:

blob.png

6.单位脉冲序列的Z变换及其反变换,同样计算代码及其结果如下图所示:

blob.png

7.f(n)δ(n-k)序列Z变换及其反变换,同样计算代码及其结果如下图所示

blob.png