/ 信号与系统

复变函数与拉普拉斯变换

今天才发现,傅立叶变换原来是拉普拉斯变换的特殊形式。那就学习一下复变函数和拉普拉斯变换吧。

一个复变函数是自变量和因变量都是复数的函数,平常的单变量函数是一种特殊形式。

基本的那些多项式应该没有什么问题,学过虚数就会算了。比较麻烦的是超越函数。让我们用熟悉的实数来推,设z=a+bi,a,bRz=a+bi,a,b\in R,由欧拉公式有:

ez=ea+bi=eaebi=ea(cosb+isinb)e^{z}=e^{a+bi}=e^a\cdot e^{bi}=e^a(\cos{b}+i\sin{b})

原本欧拉公式中的eixe^{ix}只能表示模为11的复数,自从指数有了实数的加入,eze^z能完整地表示复数域了。

可以看出,由于有sin\sincos\cos的出现,exe^{x}是多对一的。因为这样还满足函数的性质,所以这没什么关系。然而,eze^z的反函数lnz\ln{z}就没有那么幸运了。那怎么办呢?那……就让它这样吧。设zz的极角为α\alpha

lnz=ln(zeiα)=lnz+i(α+2kπ),(kZ)\ln{z}=\ln{(\left|z\right|e^{i\alpha})}=\ln\left|z\right|+i(\alpha+2k\pi),(k\in\mathbb{Z})

不过,只要求完对数之后我们及时把它放到指数的位置,应该就没有任何问题啦。比如说,请问iii^i这个困扰了我整个初中时代的问题的值是多少?

这就像axa^x的导数的推导过程一样,直接算不好算,把它扔给ee就好处理了。

ii=eilni=eii(π2+2kπ)=e(π2+2kπ)(kZ)i^i=e^{i\ln{i}}=e^{i\cdot i(\frac{\pi}{2}+2k\pi)}=e^{-(\frac{\pi}{2}+2k\pi)}(k\in\mathbb{Z})

等一下!ii怎么消了!难道iii^i有不同的取值?

于是我决定换一个方法求。

ii=(ei(π2+2kπ))i=e(π2+2kπ)(kZ)i^i=(e^{i(\frac{\pi}{2}+2k\pi)})^i=e^{-(\frac{\pi}{2}+2k\pi)}(k\in\mathbb{Z})

看来是真的了。这将成为困扰我高中时代的问题。

对于三角函数一类,可以用欧拉公式的变形成指数形式,看能不能算出来。合角公式是能用的。

求导法则

一个复变函数f(z)f(z)的导数就是

dfdz=limzzf(z)f(z)zz\frac{\mathrm{d}f}{\mathrm{d}z}=\lim_{z'\rightarrow z}{\frac{f(z')-f(z)}{z'-z}}

那就可以开始各种推导了!

由于复变函数可以表达成f(x,y)=u+ivf(x,y)=u+iv,所以实变函数的很多法则都可以用到复变函数上,基本上所有的求导公式都直接出来了。

由于zz'可以从任意方向逼近zz,不妨固定虚部:

limzzf(z)f(z)zz=limxxf(x+iy)f(x+iy)xx=limxxu(x+iy)+iv(x+iy)u(x+iy)iv(x+iy)xx=limxxu(x+iy)u(x+iy)xx+ilimxxv(x+iy)v(x+iy)xx=ux+ivx\begin{matrix} &\lim_{z'\rightarrow z}{\frac{f(z')-f(z)}{z'-z}}\\ =&\lim_{x'\rightarrow x}{\frac{f(x'+iy)-f(x+iy)}{x'-x}}\\ =&\lim_{x'\rightarrow x}{\frac{u(x'+iy)+iv(x'+iy)-u(x+iy)-iv(x'+iy)}{x'-x}}\\ =&\lim_{x'\rightarrow x}\frac{u(x'+iy)-u(x+iy)}{x'-x}+i\lim_{x'\rightarrow x}\frac{v(x'+iy)-v(x+iy)}{x'-x}\\ =&\frac{\partial u}{\partial x}+i\frac{\partial v}{\partial x} \end{matrix}

同理,可以固定实部:

limzzf(z)f(z)zz=limyyf(x+iy)f(x+iy)iyiy=i(limyyf(x+iy)f(x+iy)yy)=i(uy+ivy)=vyiuy\begin{matrix} &\lim_{z'\rightarrow z}{\frac{f(z')-f(z)}{z'-z}}\\ =&\lim_{y'\rightarrow y}{\frac{f(x+iy')-f(x+iy)}{iy'-iy}}\\ =&-i(\lim_{y'\rightarrow y}{\frac{f(x+iy')-f(x+iy)}{y'-y}})\\ =&-i(\frac{\partial u}{\partial y}+i\frac{\partial v}{\partial y})\\ =&\frac{\partial v}{\partial y}-i\frac{\partial u}{\partial y} \end{matrix}

直觉告诉我们,这两个求出来的东西必须相同!又11ii线性独立,所以实部和虚部分别相等。得Cauchy-Riemann方程:

{ux=vyvx=uy\left\{\begin{matrix} \frac{\partial u}{\partial x}=\frac{\partial v}{\partial y}\\ \frac{\partial v}{\partial x}=-\frac{\partial u}{\partial y} \end{matrix}\right.

拉普拉斯变换

设时间函数为f(t)f(t),且当t<0t<0时,f(t)=0f(t)=0(这与傅立叶变换的要求不同)。如果f(t)f(t)[0,+)[0,+\infty)上只有有限多个区间,且每一个区间连续,且f(t)O(et)f(t)\in O(e^t)(保证积分收敛,这样F(s)F(s)才有意义,同样傅立叶变换没有要求),则f(t)f(t)存在拉普拉斯变换:

F(s)=L[f(t)]=0+f(t)estdtF(s)=L[f(t)]=\int_{0}^{+\infty}f(t)e^{-st}\mathrm{d}t

s=iws=iw时,该式为傅立叶变换的一半。让人欣喜的事情是,虽然拉普拉斯变换的概念没有傅立叶变换那么直观,但是傅立叶变换的很多性质拉普拉斯变换都有。

拉普拉斯逆变换:

f(t)=L1[F(s)]=12πiaia+iF(s)estdsf(t)=L^{-1}[F(s)]=\frac{1}{2\pi i}\int_{a-i\infty}^{a+i\infty}F(s)e^{st}\mathrm{d}s

虽然这两个式子具有令人惊叹的高度对称性,但拉普拉斯的逆变换真心不好做,主要使用的方法和求不定积分一样靠查表和凑。

如果想要更惊人的对称性,其实可以把两个式子前面的系数都变成12π\frac{1}{\sqrt{2\pi}}。具体是多少不关键,只要乘起来是12π\frac{1}{2\pi}就可以了。


来说几个性质。

  • 线性定理:L[kf(x)]=kL[f(x)]L[kf(x)]=kL[f(x)]L[f(x)+g(x)]=L[f(x)]+L[g(x)]L[f(x)+g(x)]=L[f(x)]+L[g(x)]。这个是显然的。
  • 延迟定理(t域平移):L[f(tT)]=0+f(tT)estdtL[f(t-T)]=\int_{0}^{+\infty}f(t-T)e^{-st}\mathrm{d}t
    =esTT+f(tT)es(tT)dt=esTL[f(t)]=e^{-sT}\int_{T}^{+\infty}f(t-T)e^{-s(t-T)}\mathrm{d}t=e^{-sT}L[f(t)]
  • 衰减定理(s域平移):设L[f(t)]=F(t)L[f(t)]=F(t),则L[eatf(t)]=0+f(t)e(s+a)tdt=F(s+a)L[e^{-at}f(t)]=\int_{0}^{+\infty}f(t)e^{-(s+a)t}\mathrm{d}t=F(s+a)
  • 微分定理:

L[df(t)dt]L[\frac{\mathrm{d}f(t)}{\mathrm{d}t}]

=0+df(t)dtestdt=\int_{0}^{+\infty}\frac{\mathrm{d}f(t)}{\mathrm{d}t}e^{-st}\mathrm{d}t

=0+estdf(t)=\int_{0}^{+\infty}e^{-st}\mathrm{d}f(t)

=estf(t)0+0+f(t)dest=\left.e^{-st}f(t)\right|_0^{+\infty}-\int_{0}^{+\infty}f(t)\mathrm{d}e^{-st}

=f(0)+sL[f(t)]=-f(0)+sL[f(t)]

倒数第二步到最后一步前半部分要由f(t)O(et)f(t)\in O(e^t)来保证收敛到00。然后可以这样求nn阶导的拉普拉斯变换了。感觉拉普拉斯变换越来越神秘了啊,将导数变为了用多项式表示的东西。

  • 积分定理:猜测结果会和求导相反,将L[f(t)]L[f(t)]除以ss。记F(t)=f(t)F'(t)=f(t)

L[F(t)]L[F(t)]

=0+F(t)estdt=\int_0^{+\infty}F(t)e^{-st}\mathrm{d}t

=1s0+F(t)dest=-\frac{1}{s}\int_0^{+\infty}F(t)\mathrm{d}e^{-st}

=1sF(t)est0++1s0+estdF(t)=-\left.\frac{1}{s}F(t)e^{-st}\right|^{+\infty}_ 0+\frac{1}{s}\int_0^{+\infty}e^{-st}\mathrm{d}F(t)

=F(0)+L[f(t)]s=\frac{F(0)+L[f(t)]}{s}

从倒数第二步到最后一步前面依然用的是f(t)f(t)的增长速度不比ete^t快,导致F(t)F(t)的增长速度也没有ete^t快。这个两个性质实在是太强了,可以将微分-积分方程转变为代数方程,也可以用代数方程做拉普拉斯变换/逆变换。

  • 终值定理:记F(s)=L[f(t)]F(s)=L[f(t)]。根据刚才的微分结论,

L[f(t)]=sF(s)f(0)L[f'(t)]=sF(s)-f(0)

lims00+f(t)estdt=lims0sF(s)f(0)\lim_{s\rightarrow 0}\int_0^{+\infty}f'(t)e^{-st}\mathrm{d}t=\lim_{s\rightarrow0}sF(s)-f(0)

0+f(t)dt=lims0sF(s)f(0)\int_0^{+\infty}f'(t)\mathrm{d}t=\lim_{s\rightarrow0}sF(s)-f(0)

f(t)0+=lims0sF(s)f(0)\left.f(t)\right|_ 0^{+\infty}=\lim_{s\rightarrow0}sF(s)-f(0)

limt+f(t)=lims0sF(s)\lim_{t\rightarrow+\infty}f(t)=\lim_{s\rightarrow0}sF(s)

这就更奇妙了。f(t)f(t)并没有要求值域是复数,可是右边的表达式明明是复数。感觉这个结论就是洛比达法则的积分版。我还比较感兴趣的是,如果f(t)f(t)是周期函数怎么办?这样求出来limt+sint\lim_{t\rightarrow+\infty}\sin{t}岂不是等于11?(2018.4.3 UPD:貌似拉普拉斯的变换对ss的取值有限制)

  • 初值定理:和上面一样的,limt0f(t)=limssF(s)\lim_{t\rightarrow 0}f(t)=\lim_{s\rightarrow\infty}sF(s)
  • 信息学最最最重要的时域卷积定理:

L[(fg)(t)]L[(f* g)(t)]

=0+0+f(Γ)g(tΓ)dΓestdt=\int_{0}^{+\infty}\int_{0}^{+\infty}f(\Gamma)g(t-\Gamma)\mathrm{d}\Gamma e^{-st}\mathrm{d}t

=0+f(Γ)[0+g(tΓ)es(tΓ)dt]esΓdΓ=\int_{0}^{+\infty}f(\Gamma)\left[\int_{0}^{+\infty}g(t-\Gamma)e^{-s(t-\Gamma)}\mathrm{d}t\right]e^{-s\Gamma}\mathrm{d}\Gamma

=L[f(t)]L[g(t)]=L[f(t)]\cdot L[g(t)]

  • 好像傅立叶变换对称的频域卷积定理不太行得通,因为变换前后函数的定义域发生了变化。

下面来推一波常见函数的拉普拉斯变换。注意虽然表达式并未体现,但是这些变换的函数小于00的部分的函数值都是00

L[1]=0+estdt=1sest0+=1sL[1]=\int_{0}^{+\infty}e^{-st}\mathrm{d}t=\left.-\frac{1}{s}e^{-st}\right|_ 0^{+\infty}=\frac{1}{s}

L[tn]=1s0+tndest=1s0+estdtn=nsL[xn1]L[t^n]=-\frac{1}{s}\int_{0}^{+\infty}t^n\mathrm{d}e^{-st}=\frac{1}{s}\int_0^{+\infty}e^{-st}\mathrm{d}t^n=\frac{n}{s}L[x^{n-1}]

因此L[tn]=n!sn+1(nN)L[t^n]=\frac{n!}{s^{n+1}}(n\in\mathbb{N})

如果小小变一变,那就可以得到一个有趣的结果:

n!=L[tn]s=1=0+tnetdtn!=L[t^n]|_ {s=1}=\int_{0}^{+\infty}t^ne^{-t}\mathbb{d}t

这不就是阶乘的拓展伽玛函数吗?!小猜想:L[tn]=n!sn+1(n0)L[t^n]=\frac{n!}{s^{n+1}}(n\geq0),不会证。

这里还要介绍一个搞笑但是很严肃的函数:狄拉克函数δ\delta。之前这个函数在《组合数学》里面出现过,不过我已经不记得在那里是什么意思了。狄拉克函数的定义方法有很多,其中之一就是正态分布逼近,但是无论怎么样都一定要满足下面两个性质:

  1. x0,δ(x)=0\forall x\neq0,\delta(x)=0
  2. +δ(x)dx=1\int_{-\infty}^{+\infty}\delta(x)\mathrm{d}x=1

这意味着……在x=0x=0处的函数值是无限大!

这个函数经常被用来在积分的时候对积分前的数值的一个筛选。举个例子,+2xδ(x2)dx=4\int_{-\infty}^{+\infty}2^x\delta(x-2)\mathrm{d}x=4

但是更常见的用途,是被用在物理上,作为质点的质量分布、点电荷的电荷分布以及神奇的小滑块等可以近似集中到一个点上的模型。因为上面的性质就直接提到了积分,那么在积分方面的应用当然也是十分广泛的啦。

比如说在这里,我们试着求一下它的拉普拉斯变换:

L[δ(t)]=0+δ(t)estdt=e0s=1L[\delta(t)]=\int_{0}^{+\infty}\delta(t)e^{-st}\mathrm{d}t=e^{-0\cdot s}=1

神奇!如果拉普拉斯变换是双射的话,那岂不是这个函数的存在十分必要?

这个东西在各种积分式子里面方便无比,因为……有了它根本什么都不用积嘛!所以它和1(t)1(t)在傅立叶变换、拉普拉斯变换在一起的时候,只要乘系数之后互换就好了。

现在多项式可以求了。三角函数,只要用欧拉定理把sin\sincos\cosexe^x表示出来就能求了。

感谢

感谢zjt同学告诉我有这个东西。
感谢Wolfram让我很方便地知道某个函数各种形式的变换。