2 连续时间系统的时域分析
基于冲激函数的信号分解
这一章首先证明了下面的公式:
f(t)=∫0tf(τ)δ(t−τ)dτ=∫−∞+∞f(τ)δ(t−τ)dτ(2.1)
式 (2.1) 在书上是通过极限逼近的思想得到的,当然也可以直接利用冲激函数的筛分特性得到。
这说明一个信号可以分解成多个多个冲击信号的积分。
卷积积分
卷积积分引出
基于式 (2.1),推导出了一个通过 e(t) 迅速求得 r(t) 的有效办法。记一个系统的单位冲击响应为 h(t) ,即 δ(t)→h(t)。由于线性系统的时不变性、齐次性和叠加性,可得 ∫0te(t)δ(t−τ)dτ→∫0te(t)h(t−τ)dτ(2.2)
关于单位冲击响应 h(t)
h(t) 是激励为单位冲激函数 δ(t) 的零状态响应,这是 h(t) 的定义。上段文字中“线性系统”四个字加粗,因为含有初始值(初始状态)的系统从定义上来说并不是线性系统。
基于这两个原因,不难理解后文中 (2.3) 求得的 r(t) 只是零状态响应。
根据式 (2.1) 知,式 (2.2) 的左边就是 e(t)。那么式 (2.2) 的右边当然就是对应的 r(t) 了。因此,激励为 e(t) 时,系统的响应可以通过下式求得:
r(t)=∫0te(t)h(t−τ)dτ(2.3)
式 (2.3) 就是卷积积分,且这里求出来的 r(t) 是零状态响应。
如果可以知道一个系统的单位冲击响应 h(t),根据式 (2.3) 可以直接从激励得到响应,而不需要知道系统的其它细节。
卷积的定义
卷积运算是一种抽象出来的运算,它的定义是:
f(t)∗g(t)=∫−∞+∞f(τ)g(t−τ)dτ(2.4)
卷积的性质
和很多运算类似,卷积具有交换律、对加减法的分配律以及结合律。对于卷积结果进行微积分运算,有下列结论成立:
dtd[u(t)∗v(t)]=u(t)∗dtdv(t)=dtdu(t)∗v(t)(2.5)
∫−∞t[u(x)∗v(x)]dx=u(t)∗[∫−∞tv(x)dx]=[∫−∞tu(x)dx]∗v(t)(2.6)
上面的式子当然可以推广到多个函数卷积的导数/积分,以及卷积结果的多阶导数/积分。
关于卷积微分、积分性质 (2.5)(2.6) 的使用条件
需要注意的是,(2.5) 的使用没有限制条件,但是 (2.6) 是不能随便使用的。这是因为在引入了奇异函数 ε(t),δ(t),δ′(t) 等后,几乎所有的真实信号函数都是无穷阶可导的,但是不是所有函数都可以执行变上限积分。
在应用式 (2.6) 时,至少需要满足以下 2 个条件:
- 被积函数 u(t)∗v(t) 是可积的。
比如等号左边不允许是 ∫−∞txdx 这种不收敛的反常积分。
- 积分号转移到等号右边的一个函数,这个函数也是可积的。
比如使用 (2.6) 的一半 ∫−∞t[u(x)∗v(x)]dx=u(t)∗[∫−∞tv(x)dx] 时,需要保证 ∫−∞tv(x)dx 是存在的,即使 ∫−∞tu(x)dx 可能并不存在。
特别地,根据式子 (2.5)(2.6),可以得到一个比较有用的结果:
u(t)∗v(t)=dtdu(t)∗∫−∞tv(x)dx(2.7)
上式还能互换 u(t),v(t) 的地位,这里略去不写。
式 (2.7) 使用的充要条件
式 (2.7) 的使用充要条件是 ∫−∞tv(x)dx 存在,且 t→−∞limu(t)∗v(t)=0。红色的式子也可以等价地表述为 u(t)∗v(t)=∫−∞t[u(x)∗v(x)]′dx。
这是因为式 (2.7) 可以看作是对式子 u(t)∗v(t)=u(t)∗v(t) 两边分别运用 (2.5)(2.6) 得到的,只不过等号右边选择了不同的函数进行微分、积分操作。需要注意的是,左边的 u(t)∗v(t) 在进行微分、积分后要能够还原出 u(t)∗v(t)。如果先进行微分,那么:
∫−∞tdxd[u(x)∗v(x)]dt=u(t)∗v(t)−u(−∞)∗v(−∞)(2.8)
显然只有满足 x→−∞limu(t)∗v(t)=0,左边才能复原。如果先进行积分,那么首先就要保证 ∫−∞t[u(x)∗v(x)]dx 存在,显然也需要满足 x→−∞limu(t)∗v(t)=0,否则反常积分不收敛。
同时,有的地方说 (2.7) 成立的条件是 u(t)=∫−∞tu′(x)dx,也就是 x→−∞limu(x)=0。这个条件仅仅是充分条件,其必要性不成立。
考虑 u(t)=1+ε(t),v(t)=[e−t−(t+1)21]ε(t),虽然不满足 x→−∞limu(x)=0,但是依然可以使用 (2.7) 式:
u(t)∗v(t)=δ(t)∗∫−∞t[e−x−(x+1)21]ε(x)dx=ε(t)∫0t[e−x−(x+1)21]dx=(t+11−e−t)ε(t)(2.9)
除此之外,还有一个延时的性质:若 f(t)=f1(t)∗f2(t),则有 f(t−t1−t2)=f1(t−t1)∗f2(t−t2)。
系统响应的时域求解
正如所提到的第一章中所提到的那样,一个线性系统至少包含 4 种类型的响应,其中又包含一种特殊的单位冲击响应。下面归纳一下这些响应的求解方法。
单位冲激响应 h(t)
关于单位冲击响应的 2 种解法
单位冲激响应的求解,书上给出了一种解法,老师给出了一种解法。
书上给出的解法叫做海维赛德部分因式分解法。这种方法很好,也非常容易掌握,但是老师没讲。这是因为该方法基于拉普拉斯变换,并且使用起来和拉普拉斯变换法高度相似。所以只需要掌握拉普拉斯变换就好了。
因此我们在这一章需要学会老师的解法。
单位冲激响应其实是 0+ 系统的零输入响应。这给了我们求解 h(t) 的思路:
- 系统在 0− 时刻是零状态的,即 r(n)(0−)=0。在 t=0 时刻忽然到来的激励 δ(t) 改变了系统的状态,使得 r(n)(0+)=0。
- 系统在 t≥0+ 时按照零输入响应的方式求解——列微分方程,根据初值 r(n)(0+) 求取微分方程的通解 h(t)。
求微分方程的通解自然是容易的,关键在如何求系统的初值 r(n)(0+) 。这个初值可以用冲击平衡法求取。
在引入奇异函数后,我们可以将常见信号大致分为以下 2 类:连续函数,非连续的连续函数的导数(后文简称非连续函数)。其中非连续函数可以写成 ε(n)(t)(n≥0) 或其组合的形式,其中最大的 n 值为其间断阶(这是为了方便理解编造的术语)。比如 x(t)=ε(t)+δ′(t) 的间断阶为 2。
连续函数多次求导变为非连续函数
考虑一个连续函数 x(t) 在某个点 t0 处很“尖锐”,也就是 x(t) 在 t0 两侧的导数值不相等,那么 x′(t) 将会成为非连续函数并出现阶跃项。若再求导,将依次出现冲击项、冲击偶项,间断阶以 1 为步长不断升高……
当然了,也有一些函数不属于上面 2 类中的任何一类,比如 Dirichlet 函数那样的,但这种函数无法在实际信号中实现,故不考虑这些函数。
冲击平衡法的思想就是令微分方程中 r(t) 的最高阶导数项是一个非连续函数,且其间断阶等于方程中非 r(t) 的最高的间断阶,利用待定系数法求解。该思想还能用来求单位阶跃响应,单位冲击偶响应等。
一个例子理解冲击平衡法的思想
用一个例子来说明,有下面的微分方程:
i′′(t)+6i′(t)+8i(t)=δ′(t)(2.10)
其中 i(t) 的最高导数项是 i′′(t),方程中最高间断阶是 δ′(t) 的 2,那么就令 i′′(t) 的间断阶是 2,从而 i′′(t) 有下面的形式:
i′′(t)=aδ′(t)+bδ(t)+cε(t)+ξ(t)(2.11)
其中 a,b,c 都是待定系数,ξ(t) 是连续函数,且 t<0 时 ξ(t)=0。将 (2.11) 代入 (2.10) 中,间断阶相等的非连续项一一对应,有:
⎩⎨⎧aδ′(t)=δ′(t)(b+6a)δ(t)=0(c+6b+8a)ε(t)=0(2.12)
从而解得 a=1,b=−6,c=28。最后使得函数在 t=0 左右跳变的只有阶跃函数 ε(t),这样就有 i′′(0+)=i′′(0−)+c=1。根据 (2.11) 还可以知道 i′(t) 中含有阶跃项 bε(t),i(t) 中含有阶跃项 aε(t)(你可以从下面看到阶跃项不止我说的这些,其中我没提到的阶跃项实际上是连续函数),从而得到 i′(0+)=b=−6,i(0+)=a=1。
在代入 i′′(t) 表达式得到 (2.12) 式的过程中,我们省略了将连续项对应的步骤。其实连续项也是可以自洽的。为方便描述令 η(t)=∫−∞tdu∫−∞uξ(v)dv,从而 ξ(t)=η′′(t)。考虑到 i′′(0−)=i′(0−)=i(0−)=0,有:
⎩⎨⎧i′(t)=aδ(t)+(b+ct)ε(t)+η′(t)i(t)=(a+bt+2t2)ε(t)+η(t)(2.13)
把连续项拿出来是
η′′(t)+6η′(t)+8η(t)=−(6ct+8bt+4t2)ε(t)(2.14)
所以 η(t) 相当于是激励为 −(6ct+8bt+4t2)ε(t) 时的零状态响应,可以用微积分的常规方法求解。
三对响应的求解及其关系
这里涉及到的三对响应分别是:
上面提到的这些响应的关系是: