线性代数.23微分方程和exp(At)

这节课涉及到怎么求解微分方程,怎么求解一阶常系数微分方程。上一节课是离散情况,这节课我们计算连续情况。

微分方程组的解

从例子讲起

已知两个微分方程

[frac{ ext{du}_1}{ ext{dt}}=-u_1+2 u_2\ frac{ ext{du}_2}{ ext{dt}}=u_1-2 u_2 ]

已知 (U(t)=left( egin{array}{c} u_1(t) \ u_2(t) \ end{array} ight))(U_0=left( egin{array}{c} u_1(0) \ u_2(0) \ end{array} ight)=left( egin{array}{c} 1 \ 0 \ end{array} ight))

根据两个方程等式右边写出系数矩阵:

[A=left( egin{array}{cc} -1 & 2 \ 1 & -2 \ end{array} ight) ]

很明显,矩阵 (A) 的行列式为0,所以她是个奇异矩阵。

计算特征方程

[det(A-lambda I)=0 ]

可得

[lambda_1=0,lambda_2=-3 ]

将两个特征值分别代入

[(A-lambda I)x=0 ]

可得

[x_1=left( egin{array}{c} 2 \ 1 \ end{array} ight),x_2=left( egin{array}{c} 1 \ -1 \ end{array} ight) ]

微分方程的解为

[U(t)=c_1 e^{lambda _1 t}x_1+c_2 e^{lambda _2 t}x_2 ]

(e^{lambda _1 t}x_1)(e^{lambda _2 t}x_2) 是方程组的两个特解。

两个解的纯指数形式是上次讲的纯幂形式在微分方程中的类似体。

在差分方程中 (u_{k+1}=Au_k), 有

[u_k=c_1lambda_1^k x_1+c_2lambda_2^k x_2+...+c_nlambda_n^k x_n ]

这里我们关心的是指数形式。

计算 (c_1、c_2) ,将 (lambda)(x) 代入,可得

[U(t)=c_2 e^{-3 t}.left( egin{array}{c} 1 \ -1 \ end{array} ight)+c_1.left( egin{array}{c} 2 \ 1 \ end{array} ight) ]

已知初值 (U_0) ,可得

[c_1=c_2=frac{1}{3} ]

故,最后得到通解:

[U(t)=frac{1}{3} left( egin{array}{c} 2 \ 1 \ end{array} ight)+frac{1}{3} e^{-3 t} left( egin{array}{c} 1 \ -1 \ end{array} ight) ]

(t ightarrow ∞,frac{1}{3} e^{-3 t} left( egin{array}{c} 1 \ -1 \ end{array} ight) ightarrow 0)(U(t)) 是稳定状态

[U(∞) ightarrow frac{1}{3} left( egin{array}{c} 2 \ 1 \ end{array} ight) ]

收敛性

什么时候微分方程的解才能到达稳态?

  1. (lambda) 实部小于零,即 $ Re (lambda)<0 $ (e^{lambda t} ightarrow 0)(U(t) ightarrow 0)(U(t)) 具有稳定性。

如果特征值是复数,假如 (lambda=-3+6i) .

[|e^{(-3+6 i) t}|=e^{-3 t} ]

取模后只有实部作用,因为根据欧拉公式

[|e^{6it}|=cos(6t)+isin(6t)=1 ]

她在单位圆内旋转。

所以只有实数部分是起作 用的。

  1. (lambda_1=0) ,并且其余的 (Relambda<0)(U(t)) 处于稳定状态。
  2. 当任意 (Relambda>0) 时,解无法收敛。

(2*2) 矩阵为例

已知微分方程组中系数矩阵

[A=left( egin{array}{cc} a & b \ c & d \ end{array} ight) ]

对于稳定性,我们要知道她的两个特征值实部是否都是小于零。

[Re lambda_1<0,Re lambda_2<0, ]

问题是,不计算,是否可以直接从矩阵判断呢?

(A) 的迹是 (a+d) ,如果两个特征值都小于零,则

[a+d<0 ]

并且满足

[detA>0 ]

从这两个条件就能看出是否稳定。

她是简便而且实用的,因为二阶系统稳定性是我们最关心的,在实际中遇到的最多。

解耦(对角化)

原方程组有两个相互耦合的未知函数,矩阵 (A) 也表明 (u_1、u_2) 互相耦合。

特征值和特征向量的作用是解耦,又称为对角化,我们可以把方程的解表示为 (S)(Lambda) 的形式。

回到原来的微分方程组,矩阵 (A) 的对角元素都不等于零

[frac{ ext{du}}{ ext{dt}}= ext{Au} ]

通过特征向量矩阵 (S) 解耦 (u) 。令

[u=Sv ]

(u) 表示为特征向量(基)的线性组合。

(u) 代入方程中,(S) 是常数阵,可以提取出来,得

[Sfrac{ ext{dv}}{ ext{dt}}= ext{ASv} ]

两边乘以 (S^{-1})

[S^{-1}Sfrac{ ext{dv}}{ ext{dt}}=S^{-1} ext{ASv} ]

化简

[frac{ ext{dv}}{ ext{dt}}=Lambda ext{v} ]

(Lambda) 为特征值矩阵。这里得到关于 (v) 得对角化方程组。

新方程组不存在耦合,(frac{dv_1}{ ext{dt}}=Lambda v_1,frac{dv_2}{ ext{dt}}=Lambda v_2) ......这是各未知数之间没有联系得方程组。

她们的解是

[v(t)=e^{Lambda t} v(0)\ u(t)=Se^{Lambda t}S^{-1} u(0)=e^{A t}u(0) ]

其中,(e^{A t}) 称为矩阵指数。

矩阵指数

回顾泰勒展开式的两个公式

[e^{x}=sum _{n=0}^{infty } frac{x^n}{n!}\ frac{1}{1-x}=sum _{n=0}^{infty } x^n ]

第二个式子被称为几何级数。

这些公式对矩阵同样适用,就像普通的函数一样,类似的,有

[e^{A t}=I+At+frac{ ext{(At)}^2}{2}+frac{ ext{(At)}^3}{6}+...++frac{ ext{(At)}^n}{n!}\ (I-At)^{-1}=I+At+(At)^2+(At)^3+...+(At)^n ]

第一个式子就是 (e^{A t}) 的定义式子。

通过展开式,我们可以看出 (e^{A t}) 每一项分母越来越大,因此无论 (A、t) 是多少,她的通项总是收敛于0,级数最终最终收敛于某值。

((I-At)^{-1}) 不一定是收敛的。假如 (A)(lambda>0) ,则 (A^n)(lambda^n) 。 级数不收敛。只有 (lambda<0) ,级数收敛,根据要求可以让级数约等于前面几项。

证明

证明 (Se^{Lambda t}S^{-1} =e^{A t})

[egin{align} e^{A t}&=I+At+frac{ ext{(At)}^2}{2}+frac{ ext{(At)}^3}{6}+...++frac{ ext{(At)}^n}{n!}\ &=SS^{-1}+SLambda S^{-1} t+frac{SLambda^2 S^{-1}}{6}t^2+...++frac{SLambda^n S^{-1}}{n!}t^n\ &=Se^{Lambda t} S^{-1} end{align} ]

前提条件是有 (n) 个特征向量,(S) 可逆,矩阵 (A) 才能对角化。

其中

[Lambda =left( egin{array}{cccc} lambda _1 & 0 & ... & 0 \ 0 & lambda _2 & ... & 0 \ ... & ... & ... & ... \ 0 & 0 & ... & lambda _n \ end{array} ight) ]

矩阵指数 (e^{Lambda t}) 表达式为

[e^{Lambda t} =left( egin{array}{cccc} e^{lambda_1 t} & 0 & ... & 0 \ 0 & e^{lambda_2 t} & ... & 0 \ ... & ... & ... & ... \ 0 & 0 & ... & e^{lambda_n t} \ end{array} ight) ]

全部特征值小于0时,(e^{Lambda t}) 的对角线上全部元素收敛于0。

我们可以在复平面上表示出来:

  1. 全部特征值小于0情况,就是当特征值位于左半平面时,可以使得微分方程存在稳定的解。
  2. 当特征值绝对值 (|lambda|<1) 时,即在单位元内,矩阵的幂收敛于0

高阶微分方程的求解

如何求解 (y''+by'+ky=0) ?

想象斐波那契数列的思路

[u=left( egin{array}{c} y' \ y \ end{array} ight) ]

增加一个方程

[y'=y' ]

把向量 (u) 作为方程的未知数,原方程化为 (u) 的一阶微分方程。

[egin{align} u’&=left( egin{array}{c} y'' \ y' \ end{array} ight)\ &=Au\ &=left( egin{array}{cc} -b & -k \ 1 & 0 \ end{array} ight).left( egin{array}{c} y' \ y \ end{array} ight) end{align} ]

一个二阶微分方程变换为一个一阶方程,可以得到一个 (2*2) 矩阵 (A).

类似的,对于一个5阶微分方程,可以得到一个 (5*5) 矩阵,这个方程使得5阶转换为一阶,然后我们就可以计算特征值和特征向量。

原文地址:https://www.cnblogs.com/ckk-blog/p/13769728.html