*{特征函数与算子}
我们在第三章中学习了矩阵的特征值与特征向量. 那么在本节中我们将尝试拓宽这一概念: 即此时我把Ax=λx中的x当成是一个函数X, A当成是一个线性算子L, 那么我们有
LX=λX.
其中我们称X为算子L的特征函数 (Eigenfunctions), λ为对应的特征值. 我们随后会发现, 特征函数与特征值对于一定条件下偏微分方程的求解具有很大的帮助. 我们不妨考虑如下的算子L, 使得对于一元函数X(x)而言,
LX(x)=−dx2d2X(x).
算子L即为求函数X(x)的二次导数相反数. 我们也可将上式简记为LX(x)=−ΔxX, 其中Δx为函数X(x)的Laplacian算子. 此时−Δx为线性算子, 因为对任意的函数X1(x),X2(x)和常数c而言,
−dx2d2(X1(x)+cX2(x))=−dx2d2X1(x)−c⋅dx2d2X2(x).
这样一来, 我们研究的对象便是
−dx2d2X(x)=λX(x).
一个很直观的例子便是X(x)=sin(x). 我们知道sin′(x)=cos(x),cos′(x)=−sin(x), 因此−dx2d2sin(x)=sin(x), 而此时我们便有
−dx2d2sin(x)=sin(x)=λsin(x),
因此我们称函数sin(x)为−Δx算子的特征函数, 此时λ=1为与之对应的特征值. 我们设l>0, n为整数, 那么
−dx2d2sin(lnπx)=(lnπ)2sin(lnπx)=λsin(lnπx),
我们也由此可知sin(lnπx)为算子−Δx的特征函数, 与其对应的特征值为λ=(lnπ)2. 我们发现此时非零特征函数对应的特征值均为正数. 除此之外还有没有满足类似性质的函数呢?
定理 6.12
设X(x)为定义在[a,b]上的非零函数, 假设X(x)∈C2([a,b]), 且满足−dx2d2X(x)=λX(x).
若X(a)=X(b)=0, 则λ>0.
证明
我们对−dx2d2X(x)=λX(x)两边同时乘以X(x)再取积分, 我们便有
∫ab−X(x)dx2d2X(x)dx=∫abλX2(x)dx.对等式左边进行分部积分, 我们得到
∫ab−X(x)⋅X′′(x)dx=−X(x)X′(x)x=ax=b+∫abX′(x)⋅X′(x)dx.根据定义, X(a)=X(b)=0, 因此结合等式右边我们有
∫ab[X′(x)]2dx=λ∫abX2(x)dx,故λ>0.
∎
形如定理6.12中的边界条件X(a)=X(b)=0被我们称作Dirichlet 边界条件 (Dirichlet Boundary Condition). 除了Dirichlet边界条件外还有很多其它的边界条件, 比如Neumann 边界条件 (Neumann Boundary Condition). 此时X′(a)=X′(b)=0.
同时, 不要忘记−dx2d2同时也是一个线性算子, 因此我们可以尝试从线性代数的角度去学习它的性质. 回顾我们在内积空间中提到的内积: 设f(x),g(x)为实数函数, 我们定义f(x),g(x)在[a,b]上的内积为
⟨f(x),g(x)⟩=∫abf(x)⋅g(x)dx,(6.5)
若⟨f(x),g(x)⟩=0, 我们称f(x),g(x)在[a,b]上正交. 类比对称矩阵, 我们可以给出自伴算子 (Self-adjoint Operator)的定义:
定义 6.9
取(6.5)为内积, 若对任意满足边界条件B的函数X1,X2, 都有⟨LX1,X2⟩=⟨X1,LX2⟩, 我们则称算子L在B边界条件下是自伴的.
如果我们取L=−dx2d2, B为Dirichlet边界条件, 设X1(a)=X1(b)=0,X2(a)=X2(b)=0. 那么
⟨−dx2d2X1(x),X2(x)⟩=∫ab−X1′′(x)⋅X2(x)dx=−X1′(x)⋅X2(x)x=ax=b+∫abX1′(x)⋅X2′(x)dx=∫abX1′(x)⋅X2′(x)dx.
与此同时,
⟨X1(x),−dx2d2X2(x)⟩=∫abX1(x)⋅(−X2′′(x))dx=−X1(x)⋅X2′(x)x=ax=b+∫abX1′(x)⋅X2′(x)dx=∫abX1′(x)⋅X2′(x)dx.
因此⟨−dx2d2X1(x),X2(x)⟩=⟨X1(x),−dx2d2X2(x)⟩, 也就是说−dx2d2在Dirichlet边界条件下为自伴算子.
定理 6.13
设定义在[a,b]上的函数满足−dx2d2X(x)=λX(x). 若X(x)满足Dirichlet边界条件, 那么不同特征值对应的特征函数彼此正交.
证明
我们设Xm(x),Xn(x)均满足Dirichlet边界条件, 即Xm(a)=Xm(b)=Xn(a)=Xn(b)=0, 同时设−dx2d2Xm(x)=λmXm(x), −dx2d2Xn(x)=λnXn(x), 则
λm⟨Xm(x),Xn(x)⟩=⟨−dx2d2Xm(x),Xn(x)⟩=⟨Xm(x),−dx2d2Xn(x)⟩=λn⟨Xm(x),Xn(x)⟩.由于我们已经知道λ∈R+, 因此(λm−λn)⋅⟨Xm(x),Xn(x)⟩=0. 若m=n, 则⟨Xm(x),Xn(x)⟩=0, 即不同特征值对应的特征函数正交.
∎
定理6.13则立刻引出了一条推论:
推论 6.6
设l>0, m,n为整数. 若m=n, 则
∫0lsin(lmπx)sin(lnπx)dx=0,∫0lcos(lmπx)cos(lnπx)dx=0.
证明
sin(lmπx)即为满足Dirichlet边界条件的−dx2d2X(x)=λX(x)的特征函数. cos(lmπx)则为Neumann边界条件下的特征函数(参考本节课后练习第一题).
∎
我们知道在学习矩阵的特征值与特征向量时, 我们可以将向量写成是由特征向量构成的线性组合. 那么在函数空间中我们能否也用特征函数构成的基底去表示其它函数呢? 我们由此引入Fourier级数的概念:
定义 6.10
设连续函数φ(x)在区间[0,l]上有定义, 我们定义φ(x)在[0,l]上的Fourier正弦级数 (Fourier Sine Series)为
φ(x):=n=1∑∞Ansin(lnπx),(6.6)其中An为常数.
对于确定的m, 我们如果对等式(6.6)两边同时乘以sinlnπx再取积分, 我们能够得到
∫0lsin(lmπx)φ(x)dx=∫0lsin(lmπx)n=1∑∞Ansin(lnπx)dx=n=1∑∞∫0lAnsin(lmπx)⋅sin(lnπx)dx.
求和与积分的顺序交换涉及到较多的实分析内容, 在此我们不做过多解释. 结合前面的到的推论, 我们知道当m=n时等式右边的积分为零. 因此
n=1∑∞∫0lAnsin(lmπx)⋅sin(lnπx)dx=2An∫0l1−cos(l2nπx)dx=An⋅2l.
因此我们可得到An的求解公式:
An=l2∫0lφ(x)⋅sin(lnπx)dx.
一般地, 在−dx2d2X(x)=λX(x)中, 设λ1,⋯为特征值, X1,⋯为特征函数. 那么对于φ(x)而言, 我们可以类比将向量分解成特征向量的线性组合的方式, 将φ(x)写作特征函数的线性组合:
φ(x)=A1X1(x)+A2X2(x)+⋯
那么当Xi(x)满足Dirichlet边界条件时, 特征函数之间彼此正交, 因此我们便有
An:=∣∣Xn(x)∣∣2⟨φ(x),Xn(x)⟩=∫abXn2(x)dx∫abφ(x)Xn(x)dx.
*{利用特征函数求解偏微分方程}
接下来, 我们将一起探究特征函数对于求解偏微分方程有着怎么样的作用. 我们此时不妨考虑满足Dirichlet边界条件的波动方程 (Wave Equation):
utt−c2uxx=0,(0≤x≤l),u(0,t)=u(l,t)=0,u(x,0)=φ(x),ut(x,0)=ψ(x).
这里u(x,t)可以理解为一根长度为l的弦在位置x处时间t时偏离平衡位置的位移. 边界条件表示弦的两端被牢牢地固定住.
为了能够求解u(x,t), 我们采取分离变量法 (Seperation of Variables). 我们不妨假设其解满足u(x,t)=X(x)T(t), 那么此时在波动方程中我们便有
X(x)T′′(t)−c2X′′(x)T(t)=0.
通过变形, 我们有
−c2T(t)T′′(t)=−X(x)X′′(x)=λ.(6.7)
由于我们知道X(x)与t无关, T(t)与x无关. 因此上式能够成立的前提便是λ为常数. 我们还根据前面的推论知道, λ>0. 那么由此我们便得到了两组常微分方程:
−X′′(x)+λX(x)=0,T′′(t)+c2λT(t)=0.
此时对于X而言, 我们发现X(0)=0,X(l)=0, 因此−X′′(x)=λX(x)满足Dirichlet边界条件. 根据我们前面的推理, 我们可以设其特征值与特征函数为
λn=(lnπ)2,Xn(x)=sin(lnπx),n=1,2,⋯
对于T而言, 不难发现T′′(t)+c2λT(t)=0为一个二阶常微分方程. 我们将λ替换成λn, 然后可以用本章第3节的知识求解, 得到
Tn(t)=Ancos(lnπct)+Bnsin(lnπct).
因此对于每一个n, 我们得到
un(x,t)=[Ancos(lnπct)+Bnsin(lnπct)]⋅sin(lnπx).
我们根据叠加定理可知, 这些解的线性组合仍然是满足条件的解, 故我们有
u(x,t)=n=1∑∞[Ancos(lnπct)+Bnsin(lnπct)]⋅sin(lnπx),
其中An,Bn的系数取决于初始条件中的φ(x),ψ(x). 由u(x,0)=φ(x)可知, 我们令t=0, 得到
φ(x)=n=1∑∞Ansin(lnπx).
因此An正是边界条件φ(x)中的Fourier正弦系数, 即
An=l2∫0lφ(x)sin(lnπx)dx.
另一方面,
ut(x,t)=n=1∑∞[−An⋅lnπcsin(lnπct)+Bn⋅lnπc⋅cos(lnπct)]⋅sin(lnπx),
结合ut(x,0)=ψ(x), 我们有
ψ(x)=n=1∑∞Bn⋅lnπc⋅sin(lnπx),
则
Bn=nπc2∫0lψ(x)sin(lnπx)dx.
定理 6.14
在Dirichlet边界条件下波动方程utt−c2uxx=0,0≤x≤l, u(x,0)=φ(x),ut(x,0)=ψ(x)的解为
u(x,t)=n=1∑∞[Ancos(lnπct)+Bnsin(lnπct)]⋅sin(lnπx).其中
An=l2∫0lφ(x)sin(lnπx)dx,Bn=nπc2∫0lψ(x)sin(lnπx)dx.
除此以外, 我们还可以利用特征函数求出热传导方程 (Heat Equation) 的解. 考虑满足Dirichlet边界条件的热传导方程:
ut−kuxx=0,0≤x≤l,u(0,t)=u(l,t)=0,u(x,0)=φ(x),
其中k>0为热扩散系数. 物理上, 可以将u(x,t)想象成一根长度为l的细杆在位置x处, 时间t时的温度. Dirichlet边界条件代表细杆的两端温度始终为0. 我们同样可以采用分离变量法u(x,t)=X(x)T(t). 因此我们有
X(x)T′(t)−kX′′(x)T(t)=0⟹−kT(t)T′(t)=−X(x)X′′(x)=λ>0.
因此对于X而言我们仍然有
λn=(lnπ)2,Xn(x)=sin(lnπx),n=1,2,⋯
此时的T(t)满足
Tn′(t)+k(lnπ)2Tn(t)=0,
其通解为
Tn(t)=Cne−k(nπ/l)2t.
由此一来热传导方程的解即为
u(x,t)=n=1∑∞un(x,t)=n=1∑∞Cne−k(nπ/l)2t⋅sin(lnπx).
此时如果我们再带入初始条件u(x,0)=φ(x), 不难发现
φ(x)=n=1∑∞Cnsin(lnπx),Cn=l2∫0lφ(x)sin(lnπx)dx.
定理 6.15
在Dirichlet边界条件下热传导方程ut−kuxx=0,0≤x≤l, u(x,0)=φ(x)的解为
u(x,t)=n=1∑∞un(x,t)=n=1∑∞Cne−k(nπ/l)2t⋅sin(lnπx).其中
Cn=l2∫0lφ(x)sin(lnπx)dx.
{6.6 练习}
1. [Neumann 边界条件] 设X(x)为定义在[a,b]上的函数, 满足−dx2d2X(x)=λX(x). 假设X(x)满足Neumann边界条件, 即X′(a)=X′(b)=0.
(i) 证明此时非零特征函数的特征值λ为正数;
(ii) 证明−dx2d2在Neumann边界条件下为自伴算子;
(iii) 求出此时的特征函数与特征值.
(iv) 在Neumann边界条件下, 波动方程和热传导方程的解有什么变化? 此时的边界条件在波动方程与热传导方程中有什么物理意义?
2. 分别求出函数f(x)=1,f(x)=x在区间[0,π]上的Fourier正弦级数.
3. 在波动方程utt=c2uxx, 0≤x≤l中, 边界条件满足u(0,t)=ux(l,t)=0, u(x,0)=x, ut(x,0)=0. 求出此时u(x,t)的解, 并将其表示成特征函数与特征值的复合形式.
4. 假设有一根长为l的金属棒. 在某时刻金属棒的温度为T=1, 随后其两端的温度被迅速地降为T=0. 此时对于金属棒上位置x处的温度t随时间的变化满足热传导方程ut−kuxx=0. 求出此时u(x,t)的解, 并将其表示成特征函数与特征值的复合形式.