数值分析基础应用线性代数

自乘终零矩阵

满足以下任一条件的称为自乘终零矩阵。自乘终零矩阵 B B B都满足以下三条件。

  • B k → O ( k → + ∞ ) 。 B^k\to O(k\to+\infty)。 BkO(k+)其中 O O O是零矩阵。
  • ρ ( B ) < 1 \rho(B)<1 ρ(B)<1。即谱半径小于 1 1 1
  • 至少存在一种从属矩阵范数,满足 ∣ ∣ B ∣ ∣ m < 1 ||B||_m<1 Bm<1。称这个(或这些中的某一个)范数为钻石范数或命定范数。

谱半径夹范数定理(谱夹范定理)

对于所有范数, ρ ( A ) ≤ ∣ ∣ A ∣ ∣ \rho(A)\le||A|| ρ(A)A

对于任意 ε > 0 \varepsilon>0 ε>0,至少有一种矩阵范数满足 ∣ ∣ A ∣ ∣ m ≤ ρ ( A ) + ε ||A||_m\le\rho(A)+\varepsilon Amρ(A)+ε

对于所有范数, ∣ ∣ B k ∣ ∣ 1 k → ρ ( B ) , k → + ∞ ||B^k||^\frac{1}{k}\to\rho(B),k\to+\infty Bkk1ρ(B),k+

序列终零第一定理

A ( k ) → O , k → + ∞    ⟺    A ( k ) x → 0 , ∀ x , k → + ∞ A^{(k)}\to O,k\to+\infty\iff A^{(k)}\bm{x}\to0,\forall\bm{x},k\to+\infty A(k)O,k+A(k)x0,x,k+

注意序列终零不是自乘终零。当然,自乘序列终零也是序列终零。

范数乘自由定理(定义) 范数加自由定理(三角不等式,定义)

∣ ∣ A B ∣ ∣ ≤ ∣ ∣ A ∣ ∣ ∣ ∣ B ∣ ∣ ||AB||\le||A||||B|| ABAB ∣ ∣ A + B ∣ ∣ ≤ ∣ ∣ A ∣ ∣ + ∣ ∣ B ∣ ∣ ||A+B||\le||A||+||B|| A+BA+B

迭代解线性方程组

对于 A x = b A\bm{x}=\bm{b} Ax=b,令 A = M − N A=M-N A=MN。其中 M M M可逆。

( M − N ) x = b (M-N)\bm{x}=\bm{b} (MN)x=b M x = N x + b M\bm{x}=N\bm{x}+\bm{b} Mx=Nx+b x = M − 1 N x + M − 1 b \bm{x}=M^{-1}N\bm{x}+M^{-1}\bm{b} x=M1Nx+M1b

B = M − 1 N B=M^{-1}N B=M1N f = M − 1 b \bm{f}=M^{-1}\bm{b} f=M1b。可以得到迭代形式 x ( k + 1 ) = B x ( k ) + f \bm{x}^{(k+1)}=B\bm{x}^{(k)}+\bm{f} x(k+1)=Bx(k)+f。这属于单步定常迭代法

要保证 M M M可逆,一种简单的想法是让 M M M就是 A A A的对角部分,然后 N N N是剩下的相反数。这种迭代法叫雅克比(Jacobi)迭代法

实际上我们是一个一个算 x i \bm{x}_i xi的。如果算的时候已经算出 x j ( k + 1 ) \bm{x}_j^{(k+1)} xj(k+1),那么要用 x j ( k ) \bm{x}_j^{(k)} xj(k)的时候就改成用这个新的值,这种迭代法叫Gauss-Seidel(高斯-赛德尔,简称GS)迭代法。不知道这个能优化多少,而且这个人显然不了解并行计算。

误差向量

x ∗ \bm{x}^* x是真正的解。记误差向量 e ( k ) = x ( k ) − x ∗ \bm{e}^{(k)}=\bm{x}^{(k)}-\bm{x}^* e(k)=x(k)x。那么收敛条件就是 e ( k ) → 0 , k → + ∞ \bm{e}^{(k)}\to0,k\to+\infty e(k)0,k+注意这里是对任意的初始取值都要满足。即全局收敛。

e ( k ) = B x ( k − 1 ) + f − x ∗ \bm{e}^{(k)}=B\bm{x}^{(k-1)}+\bm{f}-\bm{x}^* e(k)=Bx(k1)+fx。注意这里真正的解迭代之后依然是真正的解
因此 e ( k ) = B x ( k − 1 ) + f − B x ∗ − f = B ( x ( k − 1 ) − x ∗ ) = B e ( k − 1 ) 。 \bm{e}^{(k)}=B\bm{x}^{(k-1)}+\bm{f}-B\bm{x}^*-\bm{f}=B(\bm{x}^{(k-1)}-\bm{x}^*)=B\bm{e}^{(k-1)}。 e(k)=Bx(k1)+fBxf=B(x(k1)x)=Be(k1)也就是说新的误差向量就是上一个左乘 B B B

假设最开始取的x是 x ( 0 ) \bm{x}^{(0)} x(0,对应的误差向量是 e ( 0 ) \bm{e}^{(0)} e(0)。那么 e ( k ) = B k e ( 0 ) \bm{e}^{(k)}=B^k\bm{e}^{(0)} e(k)=Bke(0)。这里的e0是任意的。

取矩阵序列为 B B B的自乘序列,根据序列终零第一定理,收敛条件等价于 B B B自乘终零。就是说 B B B是自乘终零矩阵。 迭 代 法 收 敛    ⟺    迭 代 矩 阵 B 是 自 乘 终 零 矩 阵 迭代法收敛\iff 迭代矩阵B是自乘终零矩阵 B

迭代误差估计第五定理

假设迭代法收敛,一个钻石范数为 ∣ ∣ ? ∣ ∣ ||?|| ?,记 q = ∣ ∣ B ∣ ∣ q=||B|| q=B。则 q < 1 q<1 q<1

那么 e ( k ) = B e ( k − 1 ) = B ( x ( k − 1 ) − x ( k ) + x ( k ) − x ∗ ) = B ( x ( k − 1 ) − x ( k ) ) + B e ( k ) \bm{e}^{(k)}=B\bm{e}^{(k-1)}=B(\bm{x}^{(k-1)}-\bm{x}^{(k)}+\bm{x}^{(k)}-\bm{x}^*)=B(\bm{x}^{(k-1)}-\bm{x}^{(k)})+B\bm{e}^{(k)} e(k)=Be(k1)=B(x(k1)x(k)+x(k)x)=B(x(k1)x(k))+Be(k)

取范数有 ∣ ∣ e ( k ) ∣ ∣ ≤ ∣ ∣ B ∣ ∣ ⋅ ∣ ∣ x ( k − 1 ) − x ( k ) ∣ ∣ + ∣ ∣ B ∣ ∣ ⋅ ∣ ∣ e ( k ) ∣ ∣ ||\bm{e}^{(k)}||\le||B||\cdot||\bm{x}^{(k-1)}-\bm{x}^{(k)}||+||B||\cdot||\bm{e}^{(k)}|| e(k)Bx(k1)x(k)+Be(k)。这是定理的第一部分。

继续,我们知道 ∣ ∣ x ( k − 1 ) − x ( k ) ∣ ∣ = ∣ ∣ B ( x ( k − 2 ) − x ( k − 1 ) ) ∣ ∣ ≤ ∣ ∣ B ∣ ∣ ⋅ ∣ ∣ x ( k − 2 ) − x ( k − 1 ) ∣ ∣ ≤ ∣ ∣ B ∣ ∣ 2 ⋅ ∣ ∣ x ( k − 3 ) − x ( k − 2 ) ∣ ∣ ≤ ⋯ ≤ ∣ ∣ B ∣ ∣ k − 1 ⋅ ∣ ∣ x ( 0 ) − x ( 1 ) ∣ ∣ ||\bm{x}^{(k-1)}-\bm{x}^{(k)}||=||B(\bm{x}^{(k-2)}-\bm{x}^{(k-1)})||\le||B||\cdot||\bm{x}^{(k-2)}-\bm{x}^{(k-1)}||\le||B||^2\cdot||\bm{x}^{(k-3)}-\bm{x}^{(k-2)}||\le\cdots\le||B||^{k-1}\cdot||\bm{x}^{(0)}-\bm{x}^{(1)}|| x(k1)x(k)=B(x(k2)x(k1))Bx(k2)x(k1)B2x(k3)x(k2)Bk1x(0)x(1)。那么上一行那个式子也有这个过程。

迭代误差估计第五定理描述为:假设迭代法收敛,一个钻石范数为 ∣ ∣ ? ∣ ∣ ||?|| ?,记 q = ∣ ∣ B ∣ ∣ q=||B|| q=B。则 q < 1 q<1 q<1。则 ∣ ∣ e ( k ) ∣ ∣ ≤ ( 1 $ q ) ∣ ∣ x ( k ) − x ( k − 1 ) ∣ ∣ ||\bm{e}^{(k)}||\le(1\$q)||\bm{x}^{(k)}-\bm{x}^{(k-1)}|| e(k)(1$q)x(k)x(k1) ∣ ∣ e ( k ) ∣ ∣ ≤ q k 1 − q ∣ ∣ x ( 1 ) − x ( 0 ) ∣ ∣ ||\bm{e}^{(k)}||\le\frac{q^k}{1-q}||\bm{x}^{(1)}-\bm{x}^{(0)}|| e(k)1qqkx(1)x(0)我觉得这么总结最好: ∣ ∣ e ( k ) ∣ ∣ ≤ q 1 − q ∣ ∣ x ( k ) − x ( k − 1 ) ∣ ∣ ≤ q 2 1 − q ∣ ∣ x ( k − 1 ) − x ( k − 2 ) ∣ ∣ ≤ ⋯ ≤ q k 1 − q ∣ ∣ x ( 1 ) − x ( 0 ) ∣ ∣ ||\bm{e}^{(k)}||\le\frac{q}{1-q}||\bm{x}^{(k)}-\bm{x}^{(k-1)}||\le\frac{q^2}{1-q}||\bm{x}^{(k-1)}-\bm{x}^{(k-2)}||\le\cdots\le\frac{q^k}{1-q}||\bm{x}^{(1)}-\bm{x}^{(0)}|| e(k)1qqx(k)x(k1)1qq2x(k1)x(k2)1qqkx(1)x(0)

在数值分析中这个定理的作用是,如果 q q q不是很接近 1 1 1,那么e(未知)可以用x的新旧之差来控制估计。但是 q q q很接近 1 1 1就不行。

平均收敛率 渐进收敛率

平均收敛率 R k ( B ) ≡ − ln ⁡ ∣ ∣ B k ∣ ∣ 1 k R_k(B)\equiv-\ln||B^k||^\frac{1}{k} Rk(B)lnBkk1

渐进收敛率 R ( B ) ≡ − ln ⁡ ρ ( B ) R(B)\equiv-\ln\rho(B) R(B)lnρ(B)

如果要求 k k k次迭代后有 ∣ ∣ e ( k ) ∣ ∣ / ∣ ∣ e ( 0 ) ∣ ∣ ≤ ε ||\bm{e}^{(k)}||/||\bm{e}^{(0)}||\le\varepsilon e(k)/e(0)ε,那么 k ≥ − ln ⁡ ε R ( B ) = 2.303 s R ( B ) k\ge\frac{-\ln\varepsilon}{R(B)}=\frac{2.303s}{R(B)} kR(B)lnε=R(B)2.303s其中 2.303 = ln ⁡ 10 2.303=\ln 10 2.303=ln10 s s s是位数。比如如果要求 ∣ ∣ e ( k ) ∣ ∣ / ∣ ∣ e ( 0 ) ∣ ∣ ≤ 1 0 − 5 ||\bm{e}^{(k)}||/||\bm{e}^{(0)}||\le10^{-5} e(k)/e(0)105,那 s s s就是 5 5 5

Jacobi迭代法和GS迭代法

A = D − L − U A=D-L-U A=DLU,其中 D D D是对角部分, L L L U U U是严格下、上三角部分的相反数。

如果对角元都是非0,那么D可逆。令 M = D M=D M=D N = L + U N=L+U N=L+U,这种方法称为Jacobi法(J法)。

同样如果D可逆,取 M = D − L M=D-L M=DL N = U N=U N=U,那么 ( D − L ) x = U x + b (D-L)\bm{x}=U\bm{x}+\bm{b} (DL)x=Ux+b。显然只要对角元非零下三角矩阵 D − L D-L DL就可逆(也可以说因为三角矩阵的行列式是对角元的乘积)。因此 x = ( D − L ) − 1 U x + ( D − L ) − 1 b \bm{x}=(D-L)^{-1}U\bm{x}+(D-L)^{-1}\bm{b} x=(DL)1Ux+(DL)1b,即 B = ( D − L ) − 1 U B=(D-L)^{-1}U B=(DL)1U f = ( D − L ) − 1 b \bm{f}=(D-L)^{-1}\bm{b} f=(DL)1b。这叫GS迭代法。

B G = ( D − L ) − 1 ( − A + D − L ) = − ( D − L ) − 1 A + I = I − ( D − L ) − 1 A B_G=(D-L)^{-1}(-A+D-L)=-(D-L)^{-1}A+I=I-(D-L)^{-1}A BG=(DL)1(A+DL)=(DL)1A+I=I(DL)1A

你可能感兴趣的:(数学,线性代数,矩阵,算法)