线性代数 Cheat Sheet 5-7:微分方程中的应用
在很多应用问题中,有些量随时间连续变化,它们与下面的微分方程组有关:
x′1=a11x1+⋯+a1nxnx′2=a21x2+⋯+a2nxn⋮x′n=an1x1+⋯+annxn
这里 x1,⋯,xn 是关于 t 的可导函数,导数分别是 x′1,⋯,x′n,aij 是常数。该方程组最主要的特征是线性性质。把方程组写成矩阵微分方程
x′(t)=Ax(t)
其中
x(t)=[x1(t)⋮xn(t)],x′(t)=[x′1(t)⋮x′n(t)],A=[a11⋯a1n⋮⋮an1⋯ann]
方程 (1) 的解是向量值函数,该函数定义在某实数区间,比如 t≥0,且满足方程 (1)。
由于函数求导以及向量与矩阵相乘都是线性变换,故方程 (1) 是线性的。因此,若 u 和 v 是 x′=Ax 的解,则 cu+dv 同样也是 x′=Ax 的解,因为
(cu+dv)′=cu′+dv′=cAu+dAv=A(cu+dv)
这个性质称为解的叠加。同样,恒等于零的函数也是方程 (1) 的(平凡)解。方程 (1) 的所有解的集合是值属于 Rn 的所有连续函数组成的集合的子空间。
可以证明,方程 (1) 一定存在基础解系。假如 A 是 n×n 矩阵,那么在基础解系中存在 n 个线性无关的函数,使得方程 (1) 的每一个解可以唯一表示为这 n 个函数的线性组合。即基础解系是方程 (1) 的所有解的集合的基,且解集是函数的 n 维向量空间。若给定向量 x0,那么初值问题就是构造一个(唯一)函数 x,满足 x′=Ax 和 x(0)=x0。
当 A 是对角矩阵时,可以用初等微积分求出 (1) 的解。例如考虑
[x′1(t)x′2(t)]=[300−5][x1(t)x2(t)]
即有
x′1(t)=3x1(t)x′2(t)=−5x2(t)
因为每个函数的导数仅依赖于函数自身,而不是 x1(t) 和 x2(t) 的组合或“结合”,所以称方程组 (2) 是解耦的。由微积分,(3) 的解是 x1(t)=c1e3t 和 x2(t)=c2e−5t,c1 和 c2 为任意常数。(2) 的每一个解都可以写成下列形式:
[x′1(t)x′2(t)]=[c1e3tc2e−5t]=c1[10]e3t+c2[01]e−5t
这个例子说明,对于一般的方程 x′=Ax,它的解可能是形如
x(t)=veλt
的函数的线性组合,其中 λ 为数,v 为非零向量(若 v=0,则函数 x(t) 恒为零,且满足 x′=Ax)。注意到
x′(t)=λveλtAx(t)=Aveλt
因为 eλt 不可能为零,故 x′(t) 等于 Ax′(t) 当且仅当 λv=Av,即当且即当 λ 是 A 的特征值,而 v 是对应的特征向量。因此,每一对特征值-特征向量提供了 x′=Ax 的一个解 (4),这种解有时被称为微分方程的特征函数。特征函数为求解微分方程提供了方法。
1. 解耦动力系统
设 A 的特征函数是
v1eλ1t,⋯,vneλnt
v1,⋯,vn 是线性无关的特征向量。令 P=[v1⋯vn],D 是主对角线元素为 λ1,⋯,λn 的对角阵,因此有 A=PDP−1。现做变量代换,由
y(t)=P−1x(t)或x(t)=Py(t)
定义一个新的函数 y,方程 x(t)=Py(t) 表明 y(t) 是 x(t) 关于特征向量基的坐标向量。带入 x′=Ax,有
ddt(Py)=A(Py)=(PDP−1)Py=PDy
由于 P 是常数矩阵,(5) 的左边是 Py′。在 (5) 的两边左乘 P−1,得 y′=Dy 或
[y′1(t)y′2(t)⋮y′n(t)]=[λ10⋯00λ2⋯0⋮⋱00⋯0λn][y1(t)y2(t)⋮yn(t)]
因为数值函数 yk 的倒数 y′k(t) 仅依赖于 yk,故从 x 到 y 的变量代换解耦了微分方程组。由 y1=λ1y1,由 y1(t)=c1eλ1t,对 y2,⋯,yn 也有类似的公式,因此
y(t)=[c1eλ1t⋮cneλnt],其中[c1⋮cn]=y(0)=P−1x(0)=P−1x0
为了得到原方程组的通解 x,计算
x(t)=Py(t)=[v1⋯vn]y(t)=c1v1eλ1t+⋯+cnvneλnt