写在前面:本博客是《离散时间信号处理》奥本海姆第三版的学习笔记,仅供个人学习记录使用


目录

  • 一、提出问题
  • 1. 为什么要进行频谱分析?
  • 2. 为什么要傅里叶变换?
  • 3. 为什么要拉普拉斯变换?
  • 4. 为什么要Z变换?
  • 二、傅里叶变换
  • 1. 周期信号的傅里叶级数
  • 2. 非周期信号的傅里叶变换
  • 3. 用傅里叶变换表示序列
  • 4. 傅里叶变换的性质
  • 三、拉普拉斯变换
  • 1. 双边拉普拉斯变换
  • 2. 拉氏变换的收敛域 ROC
  • 3. 双边拉普拉斯反变换
  • 4. 拉式变换的性质
  • 四、Z变换
  • 1. Z变换的定义
  • 2. z变换的收敛域ROC
  • 3. z反变换
  • 4. z变换的性质


一、提出问题

1. 为什么要进行频谱分析?

频域分析可以将信号分解成一系列不同频率的正弦和余弦函数的叠加,从而显示信号中各个频率分量的存在情况。通过观察频谱,我们可以识别信号中存在的频率成分,包括主要频率、谐波频率和噪声成分等。这对于理解信号的频率特性以及进行信号识别和分类非常有用。

2. 为什么要傅里叶变换?

傅里叶变换将信号分解成一系列不同频率的正弦和余弦函数的叠加。这个频域表示提供了信号中各个频率分量的信息,包括它们的振幅和相位。通过分析频域表示,我们可以更好地理解信号的频率特性,例如频率分量的存在、强度和分布情况。

3. 为什么要拉普拉斯变换?

傅里叶变换适用于连续时间信号的频域分析,但对于包含复杂因子(如指数衰减因子)的信号,无法完整表示其频谱特性。为了克服这个限制,拉普拉斯变换引入了复平面上的复杂频率变量s,可以更全面、更准确地描述信号的频率特性和系统的动态行为。

4. 为什么要Z变换?

拉普拉斯变换适用于连续时间信号和系统的频域分析,但对于离散时间信号和系统,无法直接应用。为了能够处理和分析离散时间信号和系统,Z变换引入了离散频率变量z,将离散信号和系统从时域转换到频域。

总结:
(1)在时域上很复杂的信号在频域上往往很简单,傅里叶变换将一个信号从时域转换到频域,但是傅里叶变换的频域表示只能覆盖实轴上的频率范围,而拉普拉斯变换提供了复平面上的频域表示,引入了复频率变量s,扩展了傅里叶变换的应用范围,适用于连续时间系统的频域分析。Z变换引入了离散频率变量z,扩展了拉普拉斯变换的应用范围,适用于离散时间系统的频域分析。
(2)信号和系统的分析方法有两种,即时域分析方法和频域分析方法。在模拟领域中,信号一般用连续变量时间的函数表示,系统则用微分方程描述。在频率域,则用信号的傅里叶变换(Fourier Transform)或拉普拉斯变换表示。而在时域离散信号和系统中,信号用时域离散信号(序列)表示,系统则用差分方程描述。在频率域,则用信号的傅里叶变换或Z变换表示。

二、傅里叶变换

1. 周期信号的傅里叶级数

(1)周期信号傅里叶级数的三角函数的线性组合表示
对于周期信号Python 拉普拉斯转离散系统_信息与通信,如果周期为Python 拉普拉斯转离散系统_傅里叶变换_02,角频率Python 拉普拉斯转离散系统_信号处理_03,频率Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_04,则其傅里叶级数展开式为:Python 拉普拉斯转离散系统_傅里叶变换_05这种表示方法为三角函数的线性组合,这里,Python 拉普拉斯转离散系统_信号处理_06Python 拉普拉斯转离散系统_频域_07称为傅里叶系数。
Python 拉普拉斯转离散系统_信号处理_08
(2)周期信号傅里叶级数的指数形式
周期信号的傅里叶级数也可以表示为指数形式:Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_09第一个式子称为综合式,第二个式子称为分析式。Python 拉普拉斯转离散系统_信息与通信_10Python 拉普拉斯转离散系统_信息与通信的傅里叶级数系数。
(3)周期信号Python 拉普拉斯转离散系统_信息与通信的平均功率Python 拉普拉斯转离散系统_信号处理_13Python 拉普拉斯转离散系统_傅里叶变换_14
这个公式表明周期信号的平均功率等于傅里叶级数展开各谐波分量有效值的平方和。又叫做帕塞瓦尔定理,即时域和频域能量守恒。

2. 非周期信号的傅里叶变换

傅里叶正变换和逆变换:Python 拉普拉斯转离散系统_信息与通信_15这里Python 拉普拉斯转离散系统_傅里叶变换_16Python 拉普拉斯转离散系统_信息与通信的频谱函数,可以写作:Python 拉普拉斯转离散系统_信息与通信_18通常把Python 拉普拉斯转离散系统_信号处理_19Python 拉普拉斯转离散系统_频域_20曲线叫做非周期信号的幅度频谱和相位频谱。

傅里叶变换存在的充分条件是满足狄里赫利(Dirichlet)条件: (1)绝对可积条件:Python 拉普拉斯转离散系统_傅里叶变换_21`
(2)函数在任意有限区间内连续,或只有有限个第一类间断点(当t从左或右趋于这个间断点时,函数有有限的左极限和右极限);
(3)在一个周期内,函数有有限个极大值或极小值。

3. 用傅里叶变换表示序列

(1)重要的表达式
傅里叶正变换和逆变换:Python 拉普拉斯转离散系统_频域_22同样,Python 拉普拉斯转离散系统_傅里叶变换_23也可以表示为Python 拉普拉斯转离散系统_信息与通信_24

(2)同样,如果Python 拉普拉斯转离散系统_信号处理_25是绝对可加的,那么Python 拉普拉斯转离散系统_傅里叶变换_23存在,即满足:Python 拉普拉斯转离散系统_信号处理_27绝对可加性是序列傅里叶变换存在的一个充分条件。任何有限长序列都是绝对可加的,从而都有一个傅里叶变换表示。在线性时不变系统范围内,任何FIR系统都一定是稳定的,因此都有一个有限且连续的频率响应。

4. 傅里叶变换的性质

因为这本书是离散时间信号处理,针对序列,所以性质什么的都用序列表示啦。

  • 对称性
  • Python 拉普拉斯转离散系统_频域_28

  • 傅里叶变换定理
  • Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_29

  • 傅里叶变换对
  • Python 拉普拉斯转离散系统_信号处理_30

三、拉普拉斯变换

拉普拉斯变换与傅里叶变换的基本差别在于: 傅氏变换将时域函数Python 拉普拉斯转离散系统_信息与通信变换为频域函数Python 拉普拉斯转离散系统_傅里叶变换_16,或作相反变换,时域中的变量Python 拉普拉斯转离散系统_信号处理_33和频域中的变量 Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_34都是实数;而拉氏变换是将时间函数Python 拉普拉斯转离散系统_信息与通信变换为复变函数Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_36,或作相反变换,这时,时域变量t虽是实数,Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_36的变量Python 拉普拉斯转离散系统_信号处理_38却是复数,与Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_34相比较,变量Python 拉普拉斯转离散系统_信号处理_38可称为“复频率”。傅里叶变换建立了时域和频域间的联系,而拉氏变换则建立了时域与复频域(s域)间的联系。

1. 双边拉普拉斯变换

(1)Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_41的双边拉普拉斯变换为:Python 拉普拉斯转离散系统_频域_42其中,Python 拉普拉斯转离散系统_傅里叶变换_43,若Python 拉普拉斯转离散系统_信息与通信_44,则双边拉式变换蜕化为傅里叶变换。
(2)这表明:连续时间傅里叶变换是双边拉普拉斯变换在Python 拉普拉斯转离散系统_信号处理_45或是在Python 拉普拉斯转离散系统_频域_46轴上的特例。 所以拉氏变换是对傅里叶变换的推广,Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_41的拉氏变换就是Python 拉普拉斯转离散系统_频域_48的傅里叶变换。只要有合适的Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_49存在,就可以使某些本来不满足狄里赫利条件的信号在引入后满足该条件。即有些信号的傅氏变换不收敛而它的拉氏变换存在。这表明拉氏变换比傅里叶变换有更广泛的适用性。

2. 拉氏变换的收敛域 ROC

(1)定义:使拉氏变换积分收敛的那些复数Python 拉普拉斯转离散系统_信息与通信_50的集合,称为拉氏变换的收敛域 。

(2)如果拉氏变换的ROC包含Python 拉普拉斯转离散系统_傅里叶变换_51轴,则有:

Python 拉普拉斯转离散系统_信息与通信_52


(3)拉氏变换ROC的性质:

  • ROC是S平面上平行于Python 拉普拉斯转离散系统_频域_46轴的带形区域,且其内无极点。
  • 右边信号的ROC一定位于Python 拉普拉斯转离散系统_频域_54最右边极点的右边;左边信号的ROC一定位于Python 拉普拉斯转离散系统_频域_54最左边极点的左边。
  • 双边信号的ROC如果存在,一定是S平面内平行于Python 拉普拉斯转离散系统_频域_46轴的带形区域。
  • 对于稳定系统,其系统函数(单位冲击响应Python 拉普拉斯转离散系统_傅里叶变换_57的拉氏变换) Python 拉普拉斯转离散系统_傅里叶变换_58 的ROC必然包括Python 拉普拉斯转离散系统_信号处理_59轴。
  • 因果稳定系统的Python 拉普拉斯转离散系统_傅里叶变换_58,其全部极点必须位于S平面的左半边。

举个栗子:对于下面的信号

Python 拉普拉斯转离散系统_傅里叶变换_61


可以形成三种 ROC:


(1)ROC:

Python 拉普拉斯转离散系统_傅里叶变换_62

,此时

Python 拉普拉斯转离散系统_傅里叶变换_63

是右边信号


(2)ROC:

Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_64

,此时

Python 拉普拉斯转离散系统_傅里叶变换_63

是左边信号


(3)ROC:

Python 拉普拉斯转离散系统_信息与通信_66

,此时

Python 拉普拉斯转离散系统_傅里叶变换_63

是双边信号

3. 双边拉普拉斯反变换

(1)双边拉普拉斯反变换为:
Python 拉普拉斯转离散系统_信息与通信_68(2)对有理函数形式的Python 拉普拉斯转离散系统_信号处理_69求反变换一般有部分分式展开法留数法

  • 部分分式展开法:将Python 拉普拉斯转离散系统_频域_70展开为部分分式;根据Python 拉普拉斯转离散系统_频域_70的ROC,确定每一项的ROC; 利用常用信号的变换对与拉氏变换的性质,对每一项进行反变换。

看理论完全李姐不了,直接看栗子吧
求下式的反变换:Python 拉普拉斯转离散系统_傅里叶变换_72解:将Python 拉普拉斯转离散系统_频域_70展开成部分分式得

Python 拉普拉斯转离散系统_信号处理_74


其中有:

Python 拉普拉斯转离散系统_傅里叶变换_75


Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_76


其可能的收敛域及所对应信号的属性:

Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_77


可见,要分三种情况讨论:


(1)右边信号,

Python 拉普拉斯转离散系统_傅里叶变换_62

,此时

Python 拉普拉斯转离散系统_傅里叶变换_79


Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_80


Python 拉普拉斯转离散系统_傅里叶变换_81


(2)左边信号,

Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_64

,同理可得

Python 拉普拉斯转离散系统_信号处理_83

(3)双边信号,

Python 拉普拉斯转离散系统_信息与通信_66

,算出来有

Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_85

  • 留数法:求出Python 拉普拉斯转离散系统_频域_70的全部极点;求出Python 拉普拉斯转离散系统_信息与通信_87在 ROC 左边的所有极点处的留数之和,它们构成了Python 拉普拉斯转离散系统_傅里叶变换_63的因果部分;求出Python 拉普拉斯转离散系统_信息与通信_87在 ROC 右边的所有极点处的留数之和,并加负号,它们构成了Python 拉普拉斯转离散系统_傅里叶变换_63的反因果部分。

同样,通过栗子来李姐:
同样是上面那个栗子:Python 拉普拉斯转离散系统_傅里叶变换_72这里规定ROC为Python 拉普拉斯转离散系统_信息与通信_66,因此Python 拉普拉斯转离散系统_频域_70的极点Python 拉普拉斯转离散系统_频域_94位于ROC的右边,Python 拉普拉斯转离散系统_傅里叶变换_95位于ROC的左边。
留数法的计算过程为:

Python 拉普拉斯转离散系统_信息与通信_96


Python 拉普拉斯转离散系统_信号处理_97

4. 拉式变换的性质

Python 拉普拉斯转离散系统_信号处理_98


拉普拉斯变换是一种连续时间信号和系统的频域分析工具,因此不适用于离散时间序列。
在离散时间信号和系统分析中,我们一般使用的是Z变换。

四、Z变换

1. Z变换的定义

(1)Z变换的公式为:Python 拉普拉斯转离散系统_信息与通信_99
Python 拉普拉斯转离散系统_信号处理_100仅取值Python 拉普拉斯转离散系统_傅里叶变换_101Python 拉普拉斯转离散系统_傅里叶变换_102时,则为单边z变换。
(2)一般来说,复变量z可表示为极坐标形式:Python 拉普拉斯转离散系统_信息与通信_103,当Python 拉普拉斯转离散系统_信息与通信_104时,复变量z取值限定在单位圆上,Python 拉普拉斯转离散系统_信号处理_105,z变换蜕化为傅里叶变换。

2. z变换的收敛域ROC

(1)z变换的收敛条件为:Python 拉普拉斯转离散系统_傅里叶变换_106对于给定的序列,使z变换收敛的Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_107值( Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_107的取值区间)称为收敛域ROC。

(2) 假设z变换的代数表示式是一个有理函数,而序列Python 拉普拉斯转离散系统_信号处理_25除了可能在Python 拉普拉斯转离散系统_信号处理_110Python 拉普拉斯转离散系统_傅里叶变换_111外,都有有限幅度,则其ROC存在以下性质:

Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_112

  • 若某个Python 拉普拉斯转离散系统_信息与通信_113值,如Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_114是在ROC内,那么全部由Python 拉普拉斯转离散系统_傅里叶变换_115确定的Python 拉普拉斯转离散系统_信息与通信_113值一定在ROC内;
  • 收敛域一定由在z平面内以原点为中心的圆环组成;圆环外边界可延伸至无穷大,内边界可包含原点;
  • 若ROC包含单位圆,即z变换对Python 拉普拉斯转离散系统_傅里叶变换_117收敛,则序列对应的傅里叶变换收敛,反之则不收敛;
  • ROC内不能包含任何极点;
  • Python 拉普拉斯转离散系统_频域_118是一个右边序列,即在Python 拉普拉斯转离散系统_信息与通信_119取值为零,那么其ROC是从Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_120中最外面的有限极点(即最大幅度但不是Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_121 )向外延伸至(可能包括)Python 拉普拉斯转离散系统_信息与通信_122
  • Python 拉普拉斯转离散系统_频域_118是一个左边序列,即在Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_124取值为零,那么其ROC是从Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_120中最里面的有限极点(即最小幅度)向内延伸至(可能包括)Python 拉普拉斯转离散系统_傅里叶变换_126
  • Python 拉普拉斯转离散系统_频域_118是一个双边序列,那么其ROC一定由z平面的一个圆环组成,其内外边界均由某一级极点界定,且圆环内不包含极点。

怎么根据z变换的收敛域判断系统的稳定性、因果性:
考虑一个单位脉冲响应为Python 拉普拉斯转离散系统_信号处理_128的系统,其z变换Python 拉普拉斯转离散系统_傅里叶变换_129的零极点图如下图所示:

Python 拉普拉斯转离散系统_频域_130


(1)如果系统是稳定的,则ROC须包含单位圆,即为

Python 拉普拉斯转离散系统_信号处理_131

,因此

Python 拉普拉斯转离散系统_信号处理_128

是双边的,从而系统非因果;


(2)如果系统是因果的,则

Python 拉普拉斯转离散系统_信号处理_128

是右边序列,要求ROC为

Python 拉普拉斯转离散系统_信号处理_134

,即不包含单位圆,则系统不稳定;


(3)对于该零极点图,不存在ROC使得系统既因果,又稳定。

(3)因此,根据z变换的收敛域判断系统的稳定性、因果性的快捷方式为: 非常重要

Python 拉普拉斯转离散系统_信息与通信_135


(4)基本序列的z变换为:

Python 拉普拉斯转离散系统_信号处理_136

3. z反变换

(1)z变换作用之一是对离散时间线性系统进行分析,以便处理。 分析和处理过程中一般先求序列的z变换,再将系统表达式在变换域经过某些运算处理后,最后通过求z反变换,获得系统的单位脉冲响应。
(2)z反变换方法包括观察法、部分分式展开法和幂级数展开法。

  • 观察法:观察z变换的结构,利用常用序列的变换对形式,直接获得z反变换。

举个栗子:若求下式z反变换:Python 拉普拉斯转离散系统_信息与通信_137考虑变换对:

Python 拉普拉斯转离散系统_信息与通信_138


可得

Python 拉普拉斯转离散系统_Python 拉普拉斯转离散系统_120

的z反变换为:

Python 拉普拉斯转离散系统_信息与通信_140

  • 部分分式展开法(因式分解):与拉式变换一样,不多赘述
  • 幂级数展开法(δ序列表示):一般也用不上,如果感兴趣可以看课本86页。

4. z变换的性质

不多说了,上图:

Python 拉普拉斯转离散系统_频域_141

可以看到,其实傅里叶变换、拉普拉斯变换和Z变换在某些性质上是互通的。这些变换之间存在一些共同的性质和关系,使得它们在不同领域和应用中可以相互转换和使用。可以根据具体情况选择最适合的变换方法来分析和处理信号和系统。

常见函数的拉普拉斯变换和z变换:

Python 拉普拉斯转离散系统_信号处理_142