文章目录
本文在学习《麻省理工公开课 线性代数 MIT 18.06 Linear Algebra》总结反思形成
视频链接:MIT-B站视频
笔记部分:总结参考子实
23.微分方程和 e A t e^{At} eAt
微分方程 d u d t = A u \frac{\mathrm{d}u}{\mathrm{d}t}=Au dtdu=Au
本讲主要讲解解一阶方程(first-order system)、一阶导数(first derivative)、常系数(constant coefficient)线性方程
本讲将进一步涉及矩阵的指数形式。通过解一个例子来详细介绍计算方法。
**例1:**一阶导数常系数线性方程组
有方程组 { d u 1 d t = − u 1 + 2 u 2 d u 2 d t = u 1 − 2 u 2 \begin{cases}\frac{\mathrm{d}u_1}{\mathrm{d}t}&=-u_1+2u_2\\\frac{\mathrm{d}u_2}{\mathrm{d}t}&=u_1-2u_2\end{cases} {dtdu1dtdu2=−u1+2u2=u1−2u2,则系数矩阵是 A = [ − 1 2 1 − 2 ] A=\begin{bmatrix}-1&2\\1&-2\end{bmatrix} A=[−112−2],设初始条件为在 0 0 0时刻 u ( 0 ) = [ u 1 u 2 ] = [ 1 0 ] u(0)=\begin{bmatrix}u_1\\u_2\end{bmatrix}=\begin{bmatrix}1\\0\end{bmatrix} u(0)=[u1u2]=[10]。
-
这个初始条件的意义可以看做在开始时一切都在 u 1 u_1 u1中,但随着时间的推移,将有 d u 2 d t > 0 \frac{\mathrm{d}u_2}{\mathrm{d}t}>0 dtdu2>0,因为 u 1 u_1 u1项初始为正, u 1 u_1 u1中的事物会流向 u 2 u_2 u2。随着时间的发展我们可以追踪流动的变化。
-
根据上一讲所学的知识,我们知道第一步需要找到特征值与特征向量。 A = [ − 1 2 1 − 2 ] A=\begin{bmatrix}-1&2\\1&-2\end{bmatrix} A=[−112−2],很明显这是一个奇异矩阵,所以第一个特征值是 λ 1 = 0 \lambda_1=0 λ1=0,另一个特征向量可以从迹得到 t r ( A ) = − 3 tr(A)=-3 tr(A)=−3。当然我们也可以用一般方法计算 ∣ A − λ I ∣ = ∣ − 1 − λ 2 1 − 2 − λ ∣ = λ 2 + 3 λ = 0 \left|A-\lambda I\right|=\begin{vmatrix}-1-\lambda&2\\1&-2-\lambda\end{vmatrix}=\lambda^2+3\lambda=0 ∣A−λI∣=∣∣∣∣−1−λ12−2−λ∣∣∣∣=λ2+3λ=0。
-
求特征向量, λ 1 = 0 \lambda_1=0 λ1=0时,即求 A A A的零空间,很明显 x 1 = [ 2 1 ] x_1=\begin{bmatrix}2\\1\end{bmatrix} x1=[21];
λ 2 = − 3 \lambda_2=-3 λ2=−3时,求 A + 3 I A+3I A+3I的零空间, [ 2 2 1 1 ] \begin{bmatrix}2&2\\1&1\end{bmatrix} [2121]的零空间为 x 2 = [ 1 − 1 ] x_2=\begin{bmatrix}1\\-1\end{bmatrix} x2=[1−1]。
-
则方程组的通解为: u ( t ) = c 1 e λ 1 t x 1 + c 2 e λ 2 t x 2 u(t)=c_1e^{\lambda_1t}x_1+c_2e^{\lambda_2t}x_2 u(t)=c1eλ1tx1+c2eλ2tx2,通解的前后两部分都是该方程组的纯解,即方程组的通解就是两个与特征值、特征向量相关的纯解的线性组合。我们来验证一下,比如取 u = e λ 1 t x 1 u=e^{\lambda_1t}x_1 u=eλ1tx1带入 d u d t = A u \frac{\mathrm{d}u}{\mathrm{d}t}=Au dtdu=Au,对时间求导得到 λ 1 e λ 1 t x 1 = A e λ 1 t x 1 \lambda_1e^{\lambda_1t}x_1=Ae^{\lambda_1t}x_1 λ1eλ1tx1=Aeλ1tx1,化简得 λ 1 x 1 = A x 1 \lambda_1x_1=Ax_1 λ1x1=Ax1。
-
继续求 c 1 , c 2 c_1,c_2 c1,c2, u ( t ) = c 1 ⋅ 1 ⋅ [ 2 1 ] + c 2 ⋅ e − 3 t ⋅ [ 1 − 1 ] u(t)=c_1\cdot 1\cdot\begin{bmatrix}2\\1\end{bmatrix}+c_2\cdot e^{-3t}\cdot\begin{bmatrix}1\\-1\end{bmatrix} u(t)=c1⋅1⋅[21]+c2⋅e−3t⋅[1−1],已知 t = 0 t=0 t=0时, [ 1 0 ] = c 1 [ 2 1 ] + c 2 [ 1 − 1 ] \begin{bmatrix}1\\0\end{bmatrix}=c_1\begin{bmatrix}2\\1\end{bmatrix}+c_2\begin{bmatrix}1\\-1\end{bmatrix} [10]=c1[21]+c2[1−1]( S c = u ( 0 ) Sc=u(0) Sc=u(0)),所以 c 1 = 1 3 , c 2 = 1 3 c_1=\frac{1}{3}, c_2=\frac{1}{3} c1=31,c2=31。
-
于是我们写出最终结果, u ( t ) = 1 3 [ 2 1 ] + 1 3 e − 3 t [ 1 − 1 ] u(t)=\frac{1}{3}\begin{bmatrix}2\\1\end{bmatrix}+\frac{1}{3}e^{-3t}\begin{bmatrix}1\\-1\end{bmatrix} u(t)=31[21]+31e−3t[1−1]。
稳定性和收敛性
稳定性:这个流动过程从 u ( 0 ) = [ 1 0 ] u(0)=\begin{bmatrix}1\\0\end{bmatrix} u(0)=[10]开始,初始值 1 1 1的一部分流入初始值 0 0 0中,经过无限的时间最终达到稳态 u ( ∞ ) = [ 2 3 1 3 ] u(\infty)=\begin{bmatrix}\frac{2}{3}\\\frac{1}{3}\end{bmatrix} u(∞)=[3231]。
所以,要使得 u ( t ) → 0 u(t)\to 0 u(t)→0,则需要负的特征值。
但如果特征值为复数呢?如 λ = − 3 + 6 i \lambda=-3+6i λ=−3+6i,我们来计算 ∣ e ( − 3 + 6 i ) t ∣ \left|e^{(-3+6i)t}\right| ∣∣e(−3+6i)t∣∣,其中的 ∣ e 6 i t ∣ \left|e^{6it}\right| ∣∣e6it∣∣部分为 ∣ cos 6 t + i sin 6 t ∣ = 1 \left|\cos 6t+i\sin 6t\right|=1 ∣cos6t+isin6t∣=1,因为这部分的模为 cos 2 α + sin 2 α = 1 \cos^2\alpha+\sin^2\alpha=1 cos2α+sin2α=1,这个虚部就在单位圆上。
所以只有实数部分才是重要的。所以我们可以把前面的结论改为需要实部为负数的特征值。
收敛态:需要其中一个特征值实部为 0 0 0,而其他特征值的实部皆小于 0 0 0。
发散态:如果某个特征值实部大于 0 0 0。
二阶矩阵特征值的判定方法
再进一步,如何从直接判断任意二阶矩阵的特征值是否均小于零?
条件1:对于二阶矩阵 A = [ a b c d ] A=\begin{bmatrix}a&b\\c&d\end{bmatrix} A=[acbd],矩阵的迹为 a + d = λ 1 + λ 2 a+d=\lambda_1+\lambda_2 a+d=λ1+λ2,如果矩阵稳定,则迹应为负数。
但是这个条件还不够,有反例迹小于 0 0 0依然发散: [ − 2 0 0 1 ] \begin{bmatrix}-2&0\\0&1\end{bmatrix} [−2001],迹为 − 1 -1 −1但是仍然发散。
条件2:还需要加上一个条件,因为 det A = λ 1 ⋅ λ 2 \det A=\lambda_1\cdot\lambda_2 detA=λ1⋅λ2,所以还需要行列式为正数。
原理总结
总结:原方程组有两个相互耦合的未知函数, u 1 , u 2 u_1, u_2 u1,u2相互耦合,而特征值和特征向量的作用就是解耦,也就是对角化(diagonalize)。
回到原方程组
d
u
d
t
=
A
u
\frac{\mathrm{d}u}{\mathrm{d}t}=Au
dtdu=Au,将
u
u
u表示为特征向量的线性组合
u
=
S
v
u=Sv
u=Sv,代入原方程有
S
d
v
d
t
=
A
S
v
S\frac{\mathrm{d}v}{\mathrm{d}t}=ASv
Sdtdv=ASv,两边同乘以
S
−
1
S^{-1}
S−1得
d
v
d
t
=
S
−
1
A
S
v
=
Λ
v
\frac{\mathrm{d}v}{\mathrm{d}t}=S^{-1}ASv=\Lambda v
dtdv=S−1ASv=Λv
以特征向量为基,将
u
u
u表示为
S
v
Sv
Sv,得到关于
v
v
v的对角化方程组,新方程组不存在耦合,此时
{
d
v
1
d
t
=
λ
1
v
1
d
v
2
d
t
=
λ
2
v
2
⋮
⋮
d
v
n
d
t
=
λ
n
v
n
\begin{cases}\frac{\mathrm{d}v_1}{\mathrm{d}t}&=\lambda_1v_1\\\frac{\mathrm{d}v_2}{\mathrm{d}t}&=\lambda_2v_2\\\vdots&\vdots\\\frac{\mathrm{d}v_n}{\mathrm{d}t}&=\lambda_nv_n\end{cases}
⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧dtdv1dtdv2⋮dtdvn=λ1v1=λ2v2⋮=λnvn
该方程组各未知函数间没有联系,它们的解的一般形式为
v
(
t
)
=
e
Λ
t
v
(
0
)
v(t)=e^{\Lambda t}v(0)
v(t)=eΛtv(0),则原方程组的解的一般形式为
u
(
t
)
=
e
A
t
u
(
0
)
=
S
e
Λ
t
S
−
1
u
(
0
)
u(t)=e^{At}u(0)=Se^{\Lambda t}S^{-1}u(0)
u(t)=eAtu(0)=SeΛtS−1u(0)
这里引入了指数部分为矩阵的形式。
指数矩阵 e A t e^{At} eAt
指数矩阵
- **定义:**指数部分带有矩阵的情况称为指数矩阵(exponential matrix)。
理解指数矩阵的关键在于,将指数形式展开称为幂基数形式,就像 e x = 1 + x 2 2 + x 3 6 + ⋯ e^x=1+\frac{x^2}{2}+\frac{x^3}{6}+\cdots ex=1+2x2+6x3+⋯一样
将
e
A
t
e^{At}
eAt展开成幂级数的形式为:
e
A
t
=
I
+
A
t
+
(
A
t
)
2
2
+
(
A
t
)
3
6
+
⋯
+
(
A
t
)
n
n
!
+
⋯
e^{At}=I+At+\frac{(At)^2}{2}+\frac{(At)^3}{6}+\cdots+\frac{(At)^n}{n!}+\cdots
eAt=I+At+2(At)2+6(At)3+⋯+n!(At)n+⋯
- 证明:回到正题,我们需要证明 S e Λ t S − 1 = e A t Se^{\Lambda t}S^{-1}=e^{At} SeΛtS−1=eAt,继续使用泰勒级数:
e A t = I + A t + ( A t ) 2 2 + ( A t ) 3 6 + ⋯ + ( A t ) n n ! + ⋯ e A t = S S − 1 + S Λ S − 1 t + S Λ 2 S − 1 2 t 2 + S Λ 3 S − 1 6 t 3 + ⋯ + S Λ n S − 1 n ! t n + ⋯ e A t = S ( I + Λ t + Λ 2 t 2 2 + Λ 3 t 3 3 + ⋯ + Λ n t n n + ⋯ ) S − 1 e A t = S e Λ t S − 1 e^{At}=I+At+\frac{(At)^2}{2}+\frac{(At)^3}{6}+\cdots+\frac{(At)^n}{n!}+\cdots\\ e^{At}=SS^{-1}+S\Lambda S^{-1}t+\frac{S\Lambda^2S^{-1}}{2}t^2+\frac{S\Lambda^3S^{-1}}{6}t^3+\cdots+\frac{S\Lambda^nS^{-1}}{n!}t^n+\cdots\\ e^{At}=S\left(I+\Lambda t+\frac{\Lambda^2t^2}{2}+\frac{\Lambda^3t^3}{3}+\cdots+\frac{\Lambda^nt^n}{n}+\cdots\right)S^{-1}\\ e^{At}=Se^{\Lambda t}S^{-1} eAt=I+At+2(At)2+6(At)3+⋯+n!(At)n+⋯eAt=SS−1+SΛS−1t+2SΛ2S−1t2+6SΛ3S−1t3+⋯+n!SΛnS−1tn+⋯eAt=S(I+Λt+2Λ2t2+3Λ3t3+⋯+nΛntn+⋯)S−1eAt=SeΛtS−1
需要注意的是, e A t e^{At} eAt的泰勒级数展开是恒成立的,但这里却需要矩阵可对角化这个前提条件。
3. e Λ t e^{\Lambda t} eΛt性质
最后,我们来看看什么是
e
Λ
t
e^{\Lambda t}
eΛt,我们将
e
A
t
e^{At}
eAt变为对角矩阵就是因为对角矩阵简单、没有耦合,
e
Λ
t
=
[
e
λ
1
t
0
⋯
0
0
e
λ
2
t
⋯
0
⋮
⋮
⋱
⋮
0
0
⋯
e
λ
n
t
]
e^{\Lambda t}=\begin{bmatrix}e^{\lambda_1t}&0&\cdots&0\\0&e^{\lambda_2t}&\cdots&0\\\vdots&\vdots&\ddots&\vdots\\0&0&\cdots&e^{\lambda_nt}\end{bmatrix}
eΛt=⎣⎢⎢⎢⎡eλ1t0⋮00eλ2t⋮0⋯⋯⋱⋯00⋮eλnt⎦⎥⎥⎥⎤
=>有了 u ( t ) = S e Λ t S − 1 u ( 0 ) u(t)=Se^{\Lambda t}S^{-1}u(0) u(t)=SeΛtS−1u(0)
稳定性和收敛性
再来看矩阵的稳定性可知,所有特征值的实部均为负数时矩阵收敛,此时对角线上的指数收敛为 0 0 0。
-
如果我们画出复平面,则要使微分方程存在稳定解,则特征值存在于复平面的左侧(即实部为负);
-
要使矩阵的幂收敛于 0 0 0,则特征值存在于单位圆内部(即模小于 1 1 1),这是幂稳定区域。(上一讲的差分方程需要计算矩阵的幂。)
二阶矩阵情形
同差分方程一样,我们来看二阶情况如何计算,有
y
′
′
+
b
y
′
+
k
=
0
y''+by'+k=0
y′′+by′+k=0。我们也模仿差分方程的情形,构造方程组
{
y
′
′
=
−
b
y
′
−
k
y
y
′
=
y
′
\begin{cases}y''&=-by'-ky\\y'&=y'\end{cases}
{y′′y′=−by′−ky=y′
写成矩阵形式有
[
y
′
′
y
′
]
=
[
−
b
−
k
1
0
]
[
y
′
y
]
\begin{bmatrix}y''\\y'\end{bmatrix}=\begin{bmatrix}-b&-k\\1&0\end{bmatrix}\begin{bmatrix}y'\\y\end{bmatrix}
[y′′y′]=[−b1−k0][y′y]
令 u ′ = [ y ′ ′ y ′ ] , u = [ y ′ y ] u'=\begin{bmatrix}y''\\y'\end{bmatrix}, \ u=\begin{bmatrix}y'\\y\end{bmatrix} u′=[y′′y′], u=[y′y]。
继续推广
对于
5
5
5阶微分方程
y
′
′
′
′
′
+
b
y
′
′
′
′
+
c
y
′
′
′
+
d
y
′
′
+
e
y
′
+
f
=
0
y'''''+by''''+cy'''+dy''+ey'+f=0
y′′′′′+by′′′′+cy′′′+dy′′+ey′+f=0
则可以写作
[
y
′
′
′
′
′
y
′
′
′
′
y
′
′
′
y
′
′
y
′
]
=
[
−
b
−
c
−
d
−
e
−
f
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
]
[
y
′
′
′
′
y
′
′
′
y
′
′
y
′
y
]
\begin{bmatrix}y'''''\\y''''\\y'''\\y''\\y'\end{bmatrix}=\begin{bmatrix}-b&-c&-d&-e&-f\\1&0&0&0&0\\0&1&0&0&0\\0&0&1&0&0\\0&0&0&1&0\end{bmatrix}\begin{bmatrix}y''''\\y'''\\y''\\y'\\y\end{bmatrix}
⎣⎢⎢⎢⎢⎡y′′′′′y′′′′y′′′y′′y′⎦⎥⎥⎥⎥⎤=⎣⎢⎢⎢⎢⎡−b1000−c0100−d0010−e0001−f0000⎦⎥⎥⎥⎥⎤⎣⎢⎢⎢⎢⎡y′′′′y′′′y′′y′y⎦⎥⎥⎥⎥⎤
这样就把一个五阶微分方程化为 5 × 5 5\times 5 5×5一阶方程组,然后就是求特征值、特征向量的步骤。
24.马尔科夫矩阵、傅里叶级数
马尔科夫矩阵
定义
马尔科夫矩阵(Markov matrix)是指具有以下两个特性的矩阵:
- 矩阵中的所有元素大于等于 0 0 0;(因为马尔科夫矩阵与概率有关,而概率是非负的。)
- 每一列的元素之和为 1 1 1
推论
对于马尔科夫矩阵,我们关心幂运算过程中的稳态(steady state)。与上一讲不同,指数矩阵关系特征值是否为 0 0 0,而幂运算要达到稳态需要特征值为 1 1 1。
根据上面两条性质,我们可以得出两个推论:
- 马尔科夫矩阵必有特征值为 1 1 1;
- 其他的特征值的绝对值皆小于 1 1 1。
幂运算
u
k
=
A
k
u
0
=
S
Λ
k
S
−
1
u
0
=
S
Λ
k
S
−
1
S
c
=
S
Λ
k
c
=
c
1
λ
1
k
x
1
+
c
2
λ
2
k
x
2
+
⋯
+
c
n
λ
n
k
x
n
u_k=A^ku_0=S\Lambda^kS^{-1}u_0=S\Lambda^kS^{-1}Sc=S\Lambda^kc=c_1\lambda_1^kx_1+c_2\lambda_2^kx_2+\cdots+c_n\lambda_n^kx_n
uk=Aku0=SΛkS−1u0=SΛkS−1Sc=SΛkc=c1λ1kx1+c2λ2kx2+⋯+cnλnkxn
从该公式很容易看出幂运算的稳态。比如我们取
λ
1
=
1
\lambda_1=1
λ1=1,其他的特征值绝对值均小于
1
1
1,于是在经过
k
k
k次迭代,随着时间的推移,其他项都趋近于
0
0
0,于是在
k
→
∞
k\to\infty
k→∞时,有稳态
u
k
=
c
1
x
1
u_k=c_1x_1
uk=c1x1,这也就是初始条件
u
0
u_0
u0的第
1
1
1个分量。
证明
证明推论1:
取
A
=
[
0.1
0.01
0.3
0.2
0.99
0.3
0.7
0
0.4
]
A=\begin{bmatrix}0.1&0.01&0.3\\0.2&0.99&0.3\\0.7&0&0.4\end{bmatrix}
A=⎣⎡0.10.20.70.010.9900.30.30.4⎦⎤
则
A
−
I
=
[
−
0.9
0.01
0.3
0.2
−
0.01
0.3
0.7
0
−
0.6
]
A-I=\begin{bmatrix}-0.9&0.01&0.3\\0.2&-0.01&0.3\\0.7&0&-0.6\end{bmatrix}
A−I=⎣⎡−0.90.20.70.01−0.0100.30.3−0.6⎦⎤
-
观察 A − I A-I A−I易知其列向量中元素之和均为 0 0 0,因为马尔科夫矩阵的性质就是各列向量元素之和为 1 1 1,现在我们从每一列中减去了 1 1 1,所以这是很自然的结果。而如果列向量中元素和为 0 0 0,则矩阵的任意行都可以用“零减去其他行之和”表示出来,即该矩阵的行向量线性相关。
-
用以前学过的子空间的知识描述,当 n n n阶方阵各列向量元素之和皆为 1 1 1时,则有
[
1
1
⋮
1
]
\begin{bmatrix}1\\1\\\vdots\\1\end{bmatrix}
⎣⎢⎢⎢⎡11⋮1⎦⎥⎥⎥⎤
在矩阵
A
−
I
A-I
A−I左零空间中,即
(
A
−
I
)
T
(A-I)^T
(A−I)T行向量线性相关。
而
A
A
A特征值
1
1
1所对应的特征向量将在
A
−
I
A-I
A−I的零空间中,因为
A
x
=
x
→
(
A
−
I
)
x
=
0
Ax=x\rightarrow(A-I)x=0
Ax=x→(A−I)x=0。
-
另外,特征值具有这样一个性质:矩阵与其转置的特征值相同。
那么如果 det ( A − λ I ) = 0 \det(A-\lambda I)=0 det(A−λI)=0,则有 det ( A − λ I ) T = 0 \det(A-\lambda I)^T=0 det(A−λI)T=0
根据矩阵转置的性质有 det ( A T − λ I T ) = 0 \det(A^T-\lambda I^T)=0 det(AT−λIT)=0,即 det ( A T − λ I ) = 0 \det(A^T-\lambda I)=0 det(AT−λI)=0。这正是 A T A^T AT特征值的计算式。
-
然后计算特征值 λ 1 = 1 \lambda_1=1 λ1=1所对应的特征向量, ( A − I ) x 1 = 0 (A-I)x_1=0 (A−I)x1=0,得出 x 1 = [ 0.6 33 0.7 ] x_1=\begin{bmatrix}0.6\\33\\0.7\end{bmatrix} x1=⎣⎡0.6330.7⎦⎤,特征向量中的元素皆为正。
马尔科夫矩阵的应用
用麻省和加州这两个州的人口迁移为例:
[
u
c
a
l
u
m
a
s
s
]
k
+
1
[
0.9
0.2
0.1
0.8
]
[
u
c
a
l
u
m
a
s
s
]
k
\begin{bmatrix}u_{cal}\\u_{mass}\end{bmatrix}_{k+1}\begin{bmatrix}0.9&0.2\\0.1&0.8\end{bmatrix}\begin{bmatrix}u_{cal}\\u_{mass}\end{bmatrix}_k
[ucalumass]k+1[0.90.10.20.8][ucalumass]k
- 设初始情况
[ u c a l u m a s s ] 0 = [ 0 1000 ] \begin{bmatrix}u_{cal}\\u_{mass}\end{bmatrix}_0=\begin{bmatrix}0\\1000\end{bmatrix} [ucalumass]0=[01000]
- 我们先来看第一次迁徙后人口的变化情况:
[ u c a l u m a s s ] 1 = [ 0.9 0.2 0.1 0.8 ] [ 0 1000 ] = [ 200 800 ] \begin{bmatrix}u_{cal}\\u_{mass}\end{bmatrix}_1=\begin{bmatrix}0.9&0.2\\0.1&0.8\end{bmatrix}\begin{bmatrix}0\\1000\end{bmatrix}=\begin{bmatrix}200\\800\end{bmatrix} [ucalumass]1=[0.90.10.20.8][01000]=[200800]
-
随着时间的推移,会有越来越多的麻省人迁往加州,而同时又会有部分加州人迁往麻省。
-
计算特征值:我们知道马尔科夫矩阵的一个特征值为 λ 1 = 1 \lambda_1=1 λ1=1,则另一个特征值可以直接从迹算出 λ 2 = 0.7 \lambda_2=0.7 λ2=0.7。
- 带入 λ 1 = 1 \lambda_1=1 λ1=1求 A − I A-I A−I的零空间有
[ − 0.1 0.2 0.1 − 0.2 ] \begin{bmatrix}-0.1&0.2\\0.1&-0.2\end{bmatrix} [−0.10.10.2−0.2]
则
x
1
=
[
2
1
]
x_1=\begin{bmatrix}2\\1\end{bmatrix}
x1=[21],此时我们已经可以得出无穷步后稳态下的结果了。
u
∞
=
c
1
[
2
1
]
u_{\infty}=c_1\begin{bmatrix}2\\1\end{bmatrix}
u∞=c1[21]
且人口总数始终为
1000
1000
1000,则
c
1
=
1000
3
c_1=\frac{1000}{3}
c1=31000,稳态时
[
u
c
a
l
u
m
a
s
s
]
∞
=
[
2000
3
1000
3
]
\begin{bmatrix}u_{cal}\\u_{mass}\end{bmatrix}_{\infty}=\begin{bmatrix}\frac{2000}{3}\\\frac{1000}{3}\end{bmatrix}
[ucalumass]∞=[3200031000]
注意到特征值为 1 1 1的特征向量元素皆为正。
- 为了求每一步的结果,我们必须解出所有特征向量。带入
λ
2
=
0.7
\lambda_2=0.7
λ2=0.7求
A
−
0.7
I
A-0.7I
A−0.7I的零空间
[ 0.2 0.2 0.1 0.1 ] \begin{bmatrix}0.2&0.2\\0.1&0.1\end{bmatrix} [0.20.10.20.1]
则 x 2 = [ − 1 1 ] x_2=\begin{bmatrix}-1\\1\end{bmatrix} x2=[−11]。
通过
u
0
u_0
u0解出
c
1
,
c
2
c_1, c_2
c1,c2,已知
u
k
=
c
1
1
k
[
2
1
]
+
c
2
0.
7
k
[
−
1
1
]
u_k=c_11^k\begin{bmatrix}2\\1\end{bmatrix}+c_20.7^k\begin{bmatrix}-1\\1\end{bmatrix}
uk=c11k[21]+c20.7k[−11]
带入
k
=
0
k=0
k=0得
u
0
=
[
0
1000
]
=
c
1
[
2
1
]
+
c
2
[
−
1
1
]
u_0=\begin{bmatrix}0\\1000\end{bmatrix}=c_1\begin{bmatrix}2\\1\end{bmatrix}+c_2\begin{bmatrix}-1\\1\end{bmatrix}
u0=[01000]=c1[21]+c2[−11]
解出
c
1
=
1000
3
,
c
2
=
2000
3
c_1=\frac{1000}{3}, c_2=\frac{2000}{3}
c1=31000,c2=32000。
傅里叶级数
投影复习
在介绍傅里叶级数(Fourier se ries)之前,先来回顾一下投影。
设 q 1 , q 2 , ⋯ q n q_1,q_2,\cdots q_n q1,q2,⋯qn为一组标准正交基,则向量 v v v在该标准正交基上的展开为 v = x 1 q 1 + x 2 q 2 + ⋯ + x n q n v=x_1q_1+x_2q_2+\cdots+x_nq_n v=x1q1+x2q2+⋯+xnqn,此时我们想要得到各系数 x i x_i xi的值。比如求 x 1 x_1 x1的值,我们自然想要消掉除 x 1 q 1 x_1q_1 x1q1外的其他项,这时只需要等式两边同乘以 q 1 T q_1^T q1T,因为的 q i q_i qi向量相互正交且长度为 1 1 1,则 q i T q j = 0 , q i 2 = 1 q_i^Tq_j=0, q_i^2=1 qiTqj=0,qi2=1所以原式变为 q 1 T v = x 1 q_1^Tv=x_1 q1Tv=x1。
写为矩阵形式有
[
q
1
q
2
⋯
q
n
]
[
x
1
x
2
⋮
x
n
]
=
v
\Bigg[q_1\ q_2\ \cdots\ q_n\Bigg]\begin{bmatrix}x_1\\x_2\\\vdots\\x_n\end{bmatrix}=v
[q1 q2 ⋯ qn]⎣⎢⎢⎢⎡x1x2⋮xn⎦⎥⎥⎥⎤=v
即 Q x = v Qx=v Qx=v。所以有 x = Q − 1 v x=Q^{-1}v x=Q−1v,
标准正交基有 Q T = Q − 1 Q^T=Q^{-1} QT=Q−1,所以我们不需要计算逆矩阵可直接得出 x = Q T v x=Q^Tv x=QTv。此时对于 x x x的每一个分量有 x i = q i T v x_i=q_i^Tv xi=qiTv。
傅里叶级数
接下来介绍傅里叶级数。先写出傅里叶级数的展开式:
f ( x ) = a 0 + a 1 cos x + b 1 sin x + a 2 cos 2 x + b 2 sin 2 x + ⋯ f(x)=a_0+a_1\cos x+b_1\sin x+a_2\cos 2x+b_2\sin 2x+\cdots f(x)=a0+a1cosx+b1sinx+a2cos2x+b2sin2x+⋯
傅里叶发现,如同将向量 v v v展开(投影)到向量空间的一组标准正交基中,在函数空间中,我们也可以做类似的展开。将函数 f ( x ) f(x) f(x)投影在一系列相互正交的函数中。函数空间中的 f ( x ) f(x) f(x)就是向量空间中的 v v v;函数空间中的 1 , cos x , sin x , cos 2 x , sin 2 x , ⋯ 1,\cos x,\sin x,\cos 2x,\sin 2x,\cdots 1,cosx,sinx,cos2x,sin2x,⋯就是向量空间中的 q 1 , q 2 , ⋯ , q n q_1,q_2,\cdots,q_n q1,q2,⋯,qn;
函数正交
再来介绍何为“函数正交”。
向量正交
对于向量正交我们通常使用两向量内积(点乘)为零判断。我们知道对于向量 v , w v,w v,w的内积为 v T w = v 1 w 1 + v 2 w 2 + ⋯ + v n w n = 0 v^Tw=v_1w_1+v_2w_2+\cdots+v_nw_n=0 vTw=v1w1+v2w2+⋯+vnwn=0,也就是向量的每个分量之积再求和。
函数正交
而对于函数 f ( x ) ⋅ g ( x ) f(x)\cdot g(x) f(x)⋅g(x)内积,同样的,我们需要计算两个函数的每个值之积而后求和,由于函数取值是连续的,所以函数内积为:
f T g = ∫ f ( x ) g ( x ) d x f^Tg=\int f(x)g(x)\mathrm{d}x fTg=∫f(x)g(x)dx
在本例中,由于傅里叶级数使用正余弦函数,它们的周期都可以算作 2 π 2\pi 2π,所以本例的函数点积可以写作
f T g = ∫ 0 2 π f ( x ) g ( x ) d x f^Tg=\int_0^{2\pi}f(x)g(x)\mathrm{d}x fTg=∫02πf(x)g(x)dx。
检验一个内积
∫ 0 2 π sin x cos x d x = 1 2 sin 2 x ∣ 0 2 π = 0 \int_0^{2\pi}\sin{x}\cos{x}\mathrm{d}x=\left.\frac{1}{2}\sin^2x\right|_0^{2\pi}=0 ∫02πsinxcosxdx=21sin2x∣∣02π=0
系数求解
最后我们来看 cos x \cos x cosx项的系数是多少( a 0 a_0 a0是 f ( x ) f(x) f(x)的平均值)。同向量空间中的情形一样,我们在等式两边同时做 cos x \cos x cosx的内积,原式变 ∫ 0 2 π f ( x ) cos x d x = a 1 ∫ 0 2 π cos 2 x d x \int_0^{2\pi}f(x)\cos x\mathrm{d}x=a_1\int_0^{2\pi}\cos^2x\mathrm{d}x ∫02πf(x)cosxdx=a1∫02πcos2xdx
因为正交性等式右边仅有 cos x \cos x cosx项不为零。进一步化简得
a 1 π = ∫ 0 2 π f ( x ) cos x d x → a 1 = 1 π ∫ 0 2 π f ( x ) cos x d x a_1\pi=\int_0^{2\pi}f(x)\cos x\mathrm{d}x\rightarrow a_1=\frac{1}{\pi}\int_0^{2\pi}f(x)\cos x\mathrm{d}x a1π=∫02πf(x)cosxdx→a1=π1∫02πf(x)cosxdx。
类似求解其他系数,于是把函数 f ( x ) f(x) f(x)展开到了函数空间的一组标准正交基上。
25.复习二
知识点复习
-
正交性,有矩阵 Q = [ q 1 q 2 ⋯ q n ] Q=\Bigg[q_1\ q_2\ \cdots\ q_n\Bigg] Q=[q1 q2 ⋯ qn],若其列向量相互正交,则该矩阵满足 Q T Q = I Q^TQ=I QTQ=I。
-
投影,我们了解了Gram-Schmidt正交化法,核心思想是求法向量,即从原向量中减去投影向量 E = b − P , P = A x = A T b A T A ⋅ A E=b-P, P=Ax=\frac{A^Tb}{A^TA}\cdot A E=b−P,P=Ax=ATAATb⋅A。
-
行列式,根据行列式的前三条性质,我们拓展出了性质4-10。
- 我们继续推导出了一个利用代数余子式求行列式的公式。
- 又利用代数余子式推导出了一个求逆矩阵的公式。
- 特征值与特征向量的意义: A x = λ x Ax=\lambda x Ax=λx,进而了解了通过 det ( A − λ I ) = 0 \det(A-\lambda I)=0 det(A−λI)=0求特征值、特征向量的方法。
- 有了特征值与特征向量,我们掌握了通过公式 A S = Λ S AS=\Lambda S AS=ΛS对角化矩阵,同时掌握了求矩阵的幂 A k = S Λ k S − 1 A^k=S\Lambda^kS^{-1} Ak=SΛkS−1。
例题复习
-
求 a = [ 2 1 2 ] a=\begin{bmatrix}2\\1\\2\end{bmatrix} a=⎣⎡212⎦⎤的投影矩阵 P P P
解:由 a ⊥ ( b − p ) → A T ( b − A x ^ ) = 0 a\bot(b-p)\rightarrow A^T(b-A\hat x)=0 a⊥(b−p)→AT(b−Ax^)=0得到 x ^ = ( A T A ) − 1 A T b \hat x=\left(A^TA\right)^{-1}A^Tb x^=(ATA)−1ATb,求得 p = A x ^ = A ( A T A ) − 1 A T b = P b p=A\hat x=A\left(A^TA\right)^{-1}A^Tb=Pb p=Ax^=A(ATA)−1ATb=Pb最终得到
P = A ( A T A ) − 1 A T ‾ = a a a T a T a = 1 9 [ 4 2 4 2 1 2 4 2 4 ] \underline{P=A\left(A^TA\right)^{-1}A^T}\stackrel{a}=\frac{aa^T}{a^Ta}=\frac{1}{9}\begin{bmatrix}4&2&4\\2&1&2\\4&2&4\end{bmatrix} P=A(ATA)−1AT=aaTaaaT=91⎣⎡424212424⎦⎤- 求 P P P矩阵的特征值:
观察矩阵易知矩阵奇异,且为秩一矩阵,则其零空间为 2 2 2维,所以由 P x = 0 x Px=0x Px=0x得出矩阵的两个特征向量为 λ 1 = λ 2 = 0 \lambda_1=\lambda_2=0 λ1=λ2=0;
而从矩阵的迹得知 t r a c e ( P ) = 1 = λ 1 + λ 2 + λ 3 = 0 + 0 + 1 trace(P)=1=\lambda_1+\lambda_2+\lambda_3=0+0+1 trace(P)=1=λ1+λ2+λ3=0+0+1,则第三个特征向量为 λ 3 = 1 \lambda_3=1 λ3=1。
- 求 λ 3 = 1 \lambda_3=1 λ3=1的特征向量:
由 P x = x Px=x Px=x我们知道经其意义为, x x x过矩阵 P P P变换后不变,又有 P P P是向量 a a a的投影矩阵,所以任何向量经过 P P P变换都会落在 a a a的列空间中,则只有已经在 a a a的列空间中的向量经过 P P P的变换后保持不变,即其特征向量为 x = a = [ 2 1 2 ] x=a=\begin{bmatrix}2\\1\\2\end{bmatrix} x=a=⎣⎡212⎦⎤,也就是 P a = a Pa=a Pa=a。
- 有差分方程 u k + 1 = P u k , u 0 = [ 9 9 0 ] u_{k+1}=Pu_k,\ u_0=\begin{bmatrix}9\\9\\0\end{bmatrix} uk+1=Puk, u0=⎣⎡990⎦⎤,求解 u k u_k uk:
一般方法是解出特征值、特征向量,这里因为矩阵很特殊(投影矩阵)。
首先观察 u 1 = P u 0 u_1=Pu_0 u1=Pu0,式子相当于将 u 0 u_0 u0投影在了 a a a的列空间中,计算得
u 1 = a a T u 0 a T a = 3 a = [ 6 3 6 ] u_1=a\frac{a^Tu_0}{a^Ta}=3a=\begin{bmatrix}6\\3\\6\end{bmatrix} u1=aaTaaTu0=3a=⎣⎡636⎦⎤这里的 3 3 3相当于做投影时的系数 x ^ \hat x x^,其意义为 u 1 u_1 u1在 a a a上且距离 u 0 u_0 u0最近。
再来看看 u 2 = P u 1 u_2=Pu_1 u2=Pu1,这个式子将 u 1 u_1 u1再次投影到 a a a的列空间中,但是此时的 u 1 u_1 u1已经在该列空间中了,再次投影仍不变,所以有
u k = P k u 0 = P u 0 = [ 6 3 6 ] u_k=P^ku_0=Pu_0=\begin{bmatrix}6\\3\\6\end{bmatrix} uk=Pku0=Pu0=⎣⎡636⎦⎤ -
将点 ( 1 , 4 ) , ( 2 , 5 ) , ( 3 , 8 ) (1,4),\ (2,5),\ (3,8) (1,4), (2,5), (3,8)拟合到一条过零点的直线上
解:设直线为 y = D t y=Dt y=Dt,写成矩阵形式为
[ 1 2 3 ] D = [ 4 5 8 ] \begin{bmatrix}1\\2\\3\end{bmatrix}D=\begin{bmatrix}4\\5\\8\end{bmatrix} ⎣⎡123⎦⎤D=⎣⎡458⎦⎤
即 A D = b AD=b AD=b,很明显 D D D不存在。利用公式 A T A D ^ = A T b A^TA\hat D=A^Tb ATAD^=ATb得到 14 D = 38 , D ^ = 38 14 14D=38,\ \hat D=\frac{38}{14} 14D=38, D^=1438,即最佳直线为 y = 38 14 t y=\frac{38}{14}t y=1438t。这个近似的意义是将 b b b投影在了 A A A的列空间中。 -
求 a 1 = [ 1 2 3 ] a 2 = [ 1 1 1 ] a_1=\begin{bmatrix}1\\2\\3\end{bmatrix}\ a_2=\begin{bmatrix}1\\1\\1\end{bmatrix} a1=⎣⎡123⎦⎤ a2=⎣⎡111⎦⎤的正交向量
解:找到平面 A = [ a 1 , a 2 ] A=\Bigg[a_1,a_2\Bigg] A=[a1,a2]的正交基,使用Gram-Schmidt法,以 a 1 a_1 a1为基准,正交化 a 2 a_2 a2,也就是将 a 2 a_2 a2中平行于 a 1 a_1 a1的分量去除,即
a 2 − x a 1 = a 2 − a 1 T a 2 a 1 T a 1 a 1 = [ 1 1 1 ] − 6 14 [ 1 2 3 ] a_2-xa_1=a_2-\frac{a_1^Ta_2}{a_1^Ta_1}a_1=\begin{bmatrix}1\\1\\1\end{bmatrix}-\frac{6}{14}\begin{bmatrix}1\\2\\3\end{bmatrix} a2−xa1=a2−a1Ta1a1Ta2a1=⎣⎡111⎦⎤−146⎣⎡123⎦⎤ -
有 4 × 4 4\times 4 4×4矩阵 A A A,其特征值为 λ 1 , λ 2 , λ 3 , λ 4 \lambda_1,\lambda_2,\lambda_3,\lambda_4 λ1,λ2,λ3,λ4,则矩阵可逆的条件是什么
解:矩阵可逆,则零空间中只有零向量,即 A x = 0 x Ax=0x Ax=0x没有非零解,则零不是矩阵的特征值。
det A − 1 \det A^{-1} detA−1是什么: det A − 1 = 1 det A \det A^{-1}=\frac{1}{\det A} detA−1=detA1,而 det A = λ 1 λ 2 λ 3 λ 4 \det A=\lambda_1\lambda_2\lambda_3\lambda_4 detA=λ1λ2λ3λ4,所以有 det A − 1 = 1 λ 1 λ 2 λ 3 λ 4 \det A^{-1}=\frac{1}{\lambda_1\lambda_2\lambda_3\lambda_4} detA−1=λ1λ2λ3λ41。
t r a c e ( A + I ) trace(A+I) trace(A+I)的迹是什么:我们知道 t r a c e ( A ) = a 11 + a 22 + a 33 + a 44 = λ 1 + λ 2 + λ 3 + λ 4 trace(A)=a_{11}+a_{22}+a_{33}+a_{44}=\lambda_1+\lambda_2+\lambda_3+\lambda_4 trace(A)=a11+a22+a33+a44=λ1+λ2+λ3+λ4,所以有 t r a c e ( A + I ) = a 11 + 1 + a 22 + 1 + a 33 + 1 + a 44 + 1 = λ 1 + λ 2 + λ 3 + λ 4 + 4 trace(A+I)=a_{11}+1+a_{22}+1+a_{33}+1+a_{44}+1=\lambda_1+\lambda_2+\lambda_3+\lambda_4+4 trace(A+I)=a11+1+a22+1+a33+1+a44+1=λ1+λ2+λ3+λ4+4。
-
有矩阵 A 4 = [ 1 1 0 0 1 1 1 0 0 1 1 1 0 0 1 1 ] A_4=\begin{bmatrix}1&1&0&0\\1&1&1&0\\0&1&1&1\\0&0&1&1\end{bmatrix} A4=⎣⎢⎢⎡1100111001110011⎦⎥⎥⎤,求 D n = ? D n − 1 + ? D n − 2 D_n=?D_{n-1}+?D_{n-2} Dn=?Dn−1+?Dn−2
解:求递归式的系数,使用代数余子式将矩阵安第一行展开得
det A 4 = 1 ⋅ ∣ 1 1 0 1 1 1 0 1 1 ∣ − 1 ⋅ ∣ 1 1 0 0 1 1 0 1 1 ∣ = 1 ⋅ ∣ 1 1 0 1 1 1 0 1 1 ∣ − 1 ⋅ ∣ 1 1 1 1 ∣ = det A 3 − det A 2 \det A_4=1\cdot\begin{vmatrix}1&1&0\\1&1&1\\0&1&1\end{vmatrix}-1\cdot\begin{vmatrix}1&1&0\\0&1&1\\0&1&1\end{vmatrix}=1\cdot\begin{vmatrix}1&1&0\\1&1&1\\0&1&1\end{vmatrix}-1\cdot\begin{vmatrix}1&1\\1&1\end{vmatrix}=\det A_3-\det A_2 detA4=1⋅∣∣∣∣∣∣110111011∣∣∣∣∣∣−1⋅∣∣∣∣∣∣100111011∣∣∣∣∣∣=1⋅∣∣∣∣∣∣110111011∣∣∣∣∣∣−1⋅∣∣∣∣1111∣∣∣∣=detA3−detA2可以看出有规律 D n = D n − 1 − D n − 2 , D 1 = 1 , D 2 = 0 D_n=D_{n-1}-D_{n-2}, D_1=1, D_2=0 Dn=Dn−1−Dn−2,D1=1,D2=0。
使用我们在差分方程中的知识构建方程组
{ D n = D n − 1 − D n − 2 D n − 1 = D n − 1 \begin{cases}D_n&=D_{n-1}-D_{n-2}\\D_{n-1}&=D_{n-1}\end{cases} {DnDn−1=Dn−1−Dn−2=Dn−1
用矩阵表达有
[ D n D n − 1 ] = [ 1 − 1 1 0 ] [ D n − 1 D n − 2 ] \begin{bmatrix}D_n\\D_{n-1}\end{bmatrix}=\begin{bmatrix}1&-1\\1&0\end{bmatrix}\begin{bmatrix}D_{n-1}\\D_{n-2}\end{bmatrix} [DnDn−1]=[11−10][Dn−1Dn−2]
计算系数矩阵 A c A_c Ac的特征值
∣ 1 − λ 1 1 − λ ∣ = λ 2 − λ + 1 = 0 \begin{vmatrix}1-\lambda&1\\1&-\lambda\end{vmatrix}=\lambda^2-\lambda+1=0 ∣∣∣∣1−λ11−λ∣∣∣∣=λ2−λ+1=0
解得 λ 1 = 1 + 3 i 2 , λ 2 = 1 − 3 i 2 \lambda_1=\frac{1+\sqrt{3}i}{2},\lambda_2=\frac{1-\sqrt{3}i}{2} λ1=21+3i,λ2=21−3i,特征值为一对共轭复数。 -
有这样一类矩阵 A 4 = [ 0 1 0 0 1 0 2 0 0 2 0 3 0 0 3 0 ] A_4=\begin{bmatrix}0&1&0&0\\1&0&2&0\\0&2&0&3\\0&0&3&0\end{bmatrix} A4=⎣⎢⎢⎡0100102002030030⎦⎥⎥⎤,求投影到 A 3 A_3 A3列空间的投影矩阵
解:
法1:有 A 3 = [ 0 1 0 1 0 2 0 2 0 ] A_3=\begin{bmatrix}0&1&0\\1&0&2\\0&2&0\end{bmatrix} A3=⎣⎡010102020⎦⎤,按照通常的方法求 P = A ( A T A ) A T P=A\left(A^TA\right)A^T P=A(ATA)AT即可,但是这样很麻烦。
法2:可以考察这个矩阵是否可逆,因为如果可逆的话, R 4 \mathbb{R}^4 R4空间中的任何向量都会位于 A 4 A_4 A4的列空间,其投影不变,则投影矩阵为单位矩阵 I I I。所以按行展开求行列式 det A 4 = − 1 ⋅ − 1 ⋅ − 3 ⋅ − 3 = 9 \det A_4=-1\cdot-1\cdot-3\cdot-3=9 detA4=−1⋅−1⋅−3⋅−3=9,所以矩阵可逆,则 P = I P=I P=I。
求 A 3 A_3 A3的特征值及特征向量: ∣ A 3 − λ I ∣ = ∣ − λ 1 0 1 − λ 2 0 2 − λ ∣ = − λ 3 + 5 λ = 0 \left|A_3-\lambda I\right|=\begin{vmatrix}-\lambda&1&0\\1&-\lambda&2\\0&2&-\lambda\end{vmatrix}=-\lambda^3+5\lambda=0 ∣A3−λI∣=∣∣∣∣∣∣−λ101−λ202−λ∣∣∣∣∣∣=−λ3+5λ=0,解得 λ 1 = 0 , λ 2 = 5 , λ 3 = − 5 \lambda_1=0,\lambda_2=\sqrt 5,\lambda_3=-\sqrt 5 λ1=0,λ2=5,λ3=−5。