矩阵 exp 与常微分方程
ducati
·
·
科技·工程
前置芝士
- Jordan 标准型
- 一阶线性常微分方程的解法
- 我的上一篇博客
问题描述
给定 n 阶方阵 A \in \mathbb{C}^{n \times n},定义 f: \ \mathbb{R} \to \mathbb{C}^{n} 满足 \forall x \in \mathbb{R}, \ s.t. \ f'(x) = Af(x)。
求证:f(x) = e^{Ax} f(0)。
矩阵 exp
定义
对于 n 阶方阵 A,令
e^A = \sum_{i \in \mathrm{N}} \frac {A^i} {i!}
重要性质
性质:若 A = P^{-1}JP,则 e^A = P^{-1} e^J e^P。
证明:
\begin{aligned}e^A &= \sum_{i \in \mathrm{N}} \frac {A^i} {i!} \\ &= \sum_{i \in \mathrm{N}} \frac {P^{-1} J^i P} {i!} \\ &= P^{-1} \sum_{i \in \mathrm{N}} \frac {J^i} {i!}P \\ &= P^{-1} e^J P \end{aligned}
因此,只要能求得所有 Jordan 标准型的 \exp,便可求得所有矩阵的 \exp。
对角矩阵的 \boldsymbol{\exp}
若 J = \mathrm{diag}(\lambda_1, \lambda_2, \cdots, \lambda_n),显然有
e^J = \mathrm{diag}(e^{\lambda_1}, e^{\lambda_2}, \cdots, e^{\lambda_n})
Jordan 标准型的 \boldsymbol{\exp}
对每个 Jordan Block 分别考虑。
记该 Jordan Block 为 B,其主对角线元素为 \lambda,那么
B_{xy}^k = {k \choose y - x} \lambda^{k - (y - x)}
对每个 x, y 分别处理,令 d = y - x。代回 \exp 的表达式
\begin{aligned} \exp(B)_{xy} &= \sum_{k \ge 0} \frac {1} {k!}{k \choose d} \lambda^{k - d} \\ &= \sum_{k \ge d} \frac {\lambda^{k - d}} {d! (k - d)!} \\ &= \frac {1} {d!} \sum_{k \ge 0} \frac {\lambda^k} {k!} \\ &= \frac {e^\lambda} {d!} \end{aligned}
即
\exp(B)_{xy} = \frac {e^{\lambda}} {(y - x)!}
总结
给定任意矩阵 A,可通过如下几步求得 e^A:
- 将 A 化为 Jordan 标准型 J = P^{-1}AP。
- 考虑 J 的每个 Jordan Block,通过 \exp(B)_{xy} = \frac {e^{\lambda}} {(y - x)!} 算得 \exp(J)。
- 根据 e^J = P^{-1}e^AP 求得 e^A。
问题解法
设 Jordan 标准型 J = P^{-1} AP。
令 f(x) = Pg(x),则
\begin{aligned}f'(x) = Af(x) &\iff Pg'(x) = AP g(x) \\ &\iff g'(x) = P^{-1}APg(x) \\ &\iff g'(x) = J g(x) \end{aligned}
对每个 Jordan Block 解若干次常微分方程,再计算 \exp(xJ) 左乘各系数构成的列向量(即 g(0)),并将二者进行比较,发现它们是相等的,即
g(x) = e^{xJ} g(0)
则代回 f(x) = Pg(x),得到
f(x) = Pe^{xJ}g(0)
当 x = 0 时有 f(0) = Pg(0),得到
f(x) = Pe^{xJ} P^{-1} f(0)
注意到 xA = P(xJ)P^{-1},根据矩阵 \exp 的性质得到
f(x) = e^{xA} f(0)
一些思考
-
由于本人不是很会抽代,本文使用了常微分方程和 Jordan 标准型的技巧来推 f(x) = e^{Ax} f(0),可能存在一些抽代相关的方法能直接得到这一点,欢迎大家在评论区分享。
-
考虑 f'(x) = Af(x) 的本质:有 \boldsymbol{n} 个方程,第 \boldsymbol{i} 个方程的右端为 \boldsymbol{f'_i(x)},左端为 \boldsymbol{f_1(x), f_2(x), \cdots, f_n(x)} 的线性组合。遇到这一类多元常微分方程,可通过计算 e^{xA} 直接解决。