数值计算Lec2:方程组

引言 Intro

线性系统 Linear System

首先介绍一下线性系统 Linear System

a11x1+a12x2+⋯+a1nxn=b1a21x1+a22x2+⋯+a2nxn=b2⋮an1x1+an2x2+⋯+annxn=bn\begin{array}{rcl} a_{11}x_1 + a_{12}x_2 + \cdots + a_{1n}x_n &=& b_1 \\ a_{21}x_1 + a_{22}x_2 + \cdots + a_{2n}x_n &=& b_2 \\ &\vdots& \\ a_{n1}x_1 + a_{n2}x_2 + \cdots + a_{nn}x_n &=& b_n \end{array}

或等价的矩阵,就是 Ax=bAx=b

(a11a12⋯a1na21a22⋯a2n⋮⋮⋱⋮an1an2⋯ann)(x1x2⋮xn)=(b1b2⋮bn)\begin{array}{rcl} \left( \begin{array}{cccc} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{n1} & a_{n2} & \cdots & a_{nn} \end{array} \right) \left( \begin{array}{c} x_1 \\ x_2 \\ \vdots \\ x_n \end{array} \right) &=& \left( \begin{array}{c} b_1 \\ b_2 \\ \vdots \\ b_n \end{array} \right) \end{array}


克拉默法则 Cramer Rule

A 是 n×nn\times n 方阵。若det⁡(A)≠0\begin{array}{rcl} \det(A) &\neq& 0 \end{array},则 Ax=bAx=b 有唯一解。

xi=det⁡(Ai)det⁡(A),i=1,2,…,n\begin{array}{rcl} x_i &=& \dfrac{\det(A_i)}{\det(A)}, \qquad i=1,2,\ldots,n \end{array}

其中 AiA_i是把 AA 的 第 ii 列换成 bb 得到的矩阵。

不会有人忘了怎么算行列式(det)吧?往右下方向乘积之和减去往左下方向乘积之和

对于一个2×22 \times2的行列式A=[abcd]\begin{array}{rcl} A &=& \left[ \begin{array}{cc} a & b \\ c & d \end{array} \right] \end{array},det⁡(A)=ad−bc\begin{array}{rcl} \det(A) &=& ad-bc \end{array}

对于一个3×33 \times3的行列式A=[a11a12a13a21a22a23a31a32a33]\begin{array}{rcl} A &=& \left[ \begin{array}{ccc} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \end{array} \right] \end{array},det⁡(A)=a11|a22a23a32a33|−a12|a21a23a31a33|+a13|a21a22a31a32|=a11a22a33+a12a23a31+a13a21a32−a13a22a31−a11a23a32−a12a21a33\begin{array}{rcl} \det(A) &=& a_{11} \left| \begin{array}{cc} a_{22} & a_{23} \\ a_{32} & a_{33} \end{array} \right| – a_{12} \left| \begin{array}{cc} a_{21} & a_{23} \\ a_{31} & a_{33} \end{array} \right| + a_{13} \left| \begin{array}{cc} a_{21} & a_{22} \\ a_{31} & a_{32} \end{array} \right| \\ &=& a_{11}a_{22}a_{33}+a_{12}a_{23}a_{31}+a_{13}a_{21}a_{32}-a_{13}a_{22}a_{31}-a_{11}a_{23}a_{32}-a_{12}a_{21}a_{33}\end{array}


高斯消元法 Gaussian Elimination

定义

高斯消元的目标,就是把一般的 Ax=bAx=b化成下面三种之一

  1. 对角系统
    (a11a22⋱ann)(x1x2⋮xn)=(b1b2⋮bn)\begin{array}{rcl} \left( \begin{array}{cccc} a_{11} & & & \\ & a_{22} & & \\ & & \ddots & \\ & & & a_{nn} \end{array} \right) \left( \begin{array}{c} x_1 \\ x_2 \\ \vdots \\ x_n \end{array} \right) &=& \left( \begin{array}{c} b_1 \\ b_2 \\ \vdots \\ b_n \end{array} \right) \end{array} ,xi=bi/aii\begin{array}{rcl} x_i &=& b_i/a_{ii} \end{array}
  2. 下三角
    (a11a21a22⋮⋮⋱an1an2⋯ann)(x1x2⋮xn)=(b1b2⋮bn)\begin{array}{rcl} \left( \begin{array}{cccc} a_{11} & & & \\ a_{21} & a_{22} & & \\ \vdots & \vdots & \ddots & \\ a_{n1} & a_{n2} & \cdots & a_{nn} \end{array} \right) \left( \begin{array}{c} x_1 \\ x_2 \\ \vdots \\ x_n \end{array} \right) &=& \left( \begin{array}{c} b_1 \\ b_2 \\ \vdots \\ b_n \end{array} \right) \end{array},x1=b1/a11xi=bi−∑j=1i−1aijxjaii,i=2,…,n\begin{array}{rcl} x_1 &=& b_1/a_{11} \\ x_i &=& \dfrac{b_i-\sum_{j=1}^{i-1}a_{ij}x_j}{a_{ii}}, \qquad i=2,\ldots,n \end{array}
  3. 上三角
    (a11a12⋯a1na22⋯a2n⋱⋮ann)(x1x2⋮xn)=(b1b2⋮bn)\begin{array}{rcl} \left( \begin{array}{cccc} a_{11} & a_{12} & \cdots & a_{1n} \\ & a_{22} & \cdots & a_{2n} \\ & & \ddots & \vdots \\ & & & a_{nn} \end{array} \right) \left( \begin{array}{c} x_1 \\ x_2 \\ \vdots \\ x_n \end{array} \right) &=& \left( \begin{array}{c} b_1 \\ b_2 \\ \vdots \\ b_n \end{array} \right) \end{array},xn=bn/annxi=bi−∑j=i+1naijxjaii,i=n−1,…,1\begin{array}{rcl} x_n &=& b_n/a_{nn} \\ x_i &=& \dfrac{b_i-\sum_{j=i+1}^{n}a_{ij}x_j}{a_{ii}}, \qquad i=n-1,\ldots,1 \end{array}

增广矩阵 Augmented matrix

把 AA和 bb拼成 [A∣b][A\mid b],消元时 bb 跟着一起变。

例如

LU 分解

定义

LU 就是把消元过程写成 A=LUA=LU。这里 LL 对角线为 1(单位下三角),UU 是消完后的上三角:

A=LUL=[1∗1⋮⋮⋱∗∗⋯1],U=[∗∗⋯∗∗⋯∗⋱⋮∗]\begin{array}{rcl} A &=& LU \\ L &=& \left[ \begin{array}{cccc} 1 & & & \\ * & 1 & & \\ \vdots & \vdots & \ddots & \\ * & * & \cdots & 1 \end{array} \right], \quad U &=& \left[ \begin{array}{cccc} * & * & \cdots & * \\ & * & \cdots & * \\ & & \ddots & \vdots \\ & & & * \end{array} \right] \end{array}

例题:求 A=[113−4]A=\displaystyle\left[\begin{array}{cc}1&1\\3&-4\end{array}\right]的 LU


构造 L 的规则

Lij​(−c) 是单位下三角矩阵,只在 (i,j)(i,j) 位置放 −c-c。左乘它 = 第 ii行减 cc 倍第 jj 行。

例如 L32(−2)L_{32}(-2)就是 Row 3−2×Row 2\text{Row 3}-2\times\text{Row 2}:

L32(−2)=[100001000−2100001]\begin{array}{rcl} L_{32}(-2) &=& \left[ \begin{array}{cccc} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & -2 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{array} \right] \end{array}

逆操作把符号反过来:

Lij(−c)−1=Lij(c)\begin{array}{rcl} L_{ij}(-c)^{-1} &=& L_{ij}(c) \end{array}

把几次消元的初等矩阵乘在一起,乘数会原样堆进同一个 LL

[100c110001][100010c201][1000100c31]=[100c110c2c31]\begin{array}{rcl} \left[ \begin{array}{ccc} 1 & 0 & 0 \\ c_1 & 1 & 0 \\ 0 & 0 & 1 \end{array} \right] \left[ \begin{array}{ccc} 1 & 0 & 0 \\ 0 & 1 & 0 \\ c_2 & 0 & 1 \end{array} \right] \left[ \begin{array}{ccc} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & c_3 & 1 \end{array} \right] &=& \left[ \begin{array}{ccc} 1 & 0 & 0 \\ c_1 & 1 & 0 \\ c_2 & c_3 & 1 \end{array} \right] \end{array}


LU 分解

有了 A=LUA=LU,解 Ax=bAx=b 拆成两步三角方程:

Ax=b⟹LUx=b\begin{array}{rcl} Ax=b &\Longrightarrow& LUx=b \end{array}
Ly=bUx=y\begin{array}{rcl} Ly &=& b \qquad\\ Ux &=& y \qquad \end{array}


LU 分解的复杂度(感觉不太重要?)

假设我们有 k 个线性系统 Ax = b1, Ax = b2, · · · , Ax = bk:

每次都高斯≃2kn3/3先 LU 再反复代入≃2n3/3+2kn2\begin{array}{rcl} \text{每次都高斯} &\simeq& 2kn^{3}/3 \\ \text{先 LU 再反复代入} &\simeq& 2n^{3}/3 + 2kn^{2} \end{array}

但是,不是每个 AA 都能 LU。例如左上角的数是 0。

A=[0111]=[10a1][bc0d]=[bcabac+d]\begin{array}{rcl} A &=& \left[ \begin{array}{cc} 0 & 1 \\ 1 & 1 \end{array} \right] = \left[ \begin{array}{cc} 1 & 0 \\ a & 1 \end{array} \right] \left[ \begin{array}{cc} b & c \\ 0 & d \end{array} \right] = \left[ \begin{array}{cc} b & c \\ ab & ac+d \end{array} \right] \end{array}

比较 (1,1)(1,1)和 (2,1)(2,1):b=0b=0 且 ab=1ab=1,矛盾。所以没有(单位下三角)LU。

从上面我们可知,若 AA 的所有顺序主子式(左上角切 1×1, 2×2, …1\times1,\ 2\times2,\ \ldots的行列式)都不为 0,则不用换行就能高斯成上三角,从而有 LU。

a1=a11a2=|a11a12a21a22|a3=|a11a12a13a21a22a23a31a32a33|\begin{array}{rcl} a_1 &=& a_{11} \\ a_2 &=& \left| \begin{array}{cc} a_{11} & a_{12} \\ a_{21} & a_{22} \end{array} \right| \\ a_3 &=& \left| \begin{array}{ccc} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33} \end{array} \right| \end{array}

以下面为例,a1=0a_1=0,因此不能LU

A=[0110],a1=0,a2=−1\begin{array}{rcl} A &=& \left[ \begin{array}{cc} 0 & 1 \\ 1 & 0 \end{array} \right], \qquad a_1=0,\quad a_2=-1 \end{array}

若 AA 是列对角占优(每一列对角元的绝对值不小于该列其余绝对值之和),则部分主元 Partial Pivoting(每一步在当前列往下找绝对值最大的数,把它换到对角线上,避免主元太小)时不必换行。

|ajj|≥∑i≠j|aij|,j=1,…,n\begin{array}{rcl} |a_{jj}| &\ge& \sum_{i\neq j}|a_{ij}|, \qquad j=1,\ldots,n \end{array}

作业

用 Gauss 消元解 {x1+x2+x3=32x1+x2+3x3=0−x1−2x2+2x3=−5\begin{array}{rcl} \left\{\begin{array}{rcr} x_1+x_2+x_3 &=& 3 \\ 2x_1+x_2+3x_3 &=& 0 \\ -x_1-2x_2+2x_3 &=& -5 \end{array}\right. \end{array}

答案:

L,A 都是 5×55\times 5。若 LALA 相当于:第 1 行减 3 倍第 3 行,第 5 行加 2 倍第 3 行。求 LL 和 L−1L^{-1}

答案:

用 LU 解[212431615][x1x2x3]=[61113]\begin{array}{rcl} \left[ \begin{array}{ccc} 2 & 1 & 2 \\ 4 & 3 & 1 \\ 6 & 1 & 5 \end{array} \right] \left[ \begin{array}{c} x_1 \\ x_2 \\ x_3 \end{array} \right] &=& \left[ \begin{array}{c} 6 \\ 11 \\ 13 \end{array} \right] \end{array}

A=[a+1221]\begin{array}{rcl} A &=& \left[ \begin{array}{cc} {a+1} & 2 \\ 2 & 1 \end{array} \right]\end{array}何时有 LU?

答案:

使用部分主元的高斯消元法来求解{x1−x2+3x3=−3−x1−2x3=12x1+2x2+4x3=0\begin{array}{rcl} \left\{\begin{array}{rcr} x_1-x_2+3x_3 &=& -3 \\ -x_1-2x_3 &=& 1 \\ 2x_1+2x_2+4x_3 &=& 0 \end{array}\right. \end{array}

答案:

第一列绝对值最大的在第三行

[1−13−3−10−212240]→Row 1↔Row 3[2240−10−211−13−3]\begin{array}{rcl} \left[ \begin{array}{ccc|c} 1 & -1 & 3 & -3 \\ -1 & 0 & -2 & 1 \\ 2 & 2 & 4 & 0 \end{array} \right] &\xrightarrow{\text{Row 1}\leftrightarrow\text{Row 3}}& \left[ \begin{array}{ccc|c} 2 & 2 & 4 & 0 \\ -1 & 0 & -2 & 1 \\ 1 & -1 & 3 & -3 \end{array} \right] \end{array}
→Row 2+12×Row 1[224001011−13−3]→Row 3−12×Row 1[224001010−21−3]\begin{array}{rcl} &\xrightarrow{\text{Row 2}+\frac12\times\text{Row 1}}& \left[ \begin{array}{ccc|c} 2 & 2 & 4 & 0 \\ 0 & 1 & 0 & 1 \\ 1 & -1 & 3 & -3 \end{array} \right] \\[1.2em] &\xrightarrow{\text{Row 3}-\frac12\times\text{Row 1}}& \left[ \begin{array}{ccc|c} 2 & 2 & 4 & 0 \\ 0 & 1 & 0 & 1 \\ 0 & -2 & 1 & -3 \end{array} \right] \end{array}

第二列绝对值最大的在第三行

→Row 2↔Row 3[22400−21−30101]→Row 3+12×Row 2[22400−21−30012−12]\begin{array}{rcl} &\xrightarrow{\text{Row 2}\leftrightarrow\text{Row 3}}& \left[ \begin{array}{ccc|c} 2 & 2 & 4 & 0 \\ 0 & -2 & 1 & -3 \\ 0 & 1 & 0 & 1 \end{array} \right] \\[1.2em] &\xrightarrow{\text{Row 3}+\frac12\times\text{Row 2}}& \left[ \begin{array}{ccc|c} 2 & 2 & 4 & 0 \\ 0 & -2 & 1 & -3 \\ 0 & 0 & \frac12 & -\frac12 \end{array} \right] \end{array}

回代

[x1x2x3]=[11−1]\begin{array}{rcl} \left[ \begin{array}{c} x_1 \\ x_2 \\ x_3 \end{array} \right] &=& \left[ \begin{array}{c} 1 \\ 1 \\ -1 \end{array} \right] \end{array}

置换矩阵 Permutation Matrices

置换矩阵是每行每列恰好一个 11,其余全是 00的矩阵。等价于把单位矩阵阵做若干次换行。

[100001010][abcdefghi]=[abcghidef]\begin{array}{rcl} \left[ \begin{array}{ccc} 1 & 0 & 0 \\ 0 & 0 & 1 \\ 0 & 1 & 0 \end{array} \right] \left[ \begin{array}{ccc} a & b & c \\ d & e & f \\ g & h & i \end{array} \right] &=& \left[ \begin{array}{ccc} a & b & c \\ g & h & i \\ d & e & f \end{array} \right] \end{array}

也可以多次相乘

[010100001][100001010][abcefghij]=[hijabcefg]\begin{array}{rcl} \left[ \begin{array}{ccc} 0 & 1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 1 \end{array} \right] \left[ \begin{array}{ccc} 1 & 0 & 0 \\ 0 & 0 & 1 \\ 0 & 1 & 0 \end{array} \right] \left[ \begin{array}{ccc} a & b & c \\ e & f & g \\ h & i & j \end{array} \right] &=& \left[ \begin{array}{ccc} h & i & j \\ a & b & c \\ e & f & g \end{array} \right] \end{array}

PijP_{ij}​:置换矩阵的逆,把 II 的第 ii 行和第 jj 行对调。对调两次等于没换,所以

Pij−1=PijPijPij=I\begin{array}{rcl} P_{ij}^{-1} &=& P_{ij} \\ P_{ij}\,P_{ij} &=& I \end{array}


PA=LU 分解法 Factorization

相比于LU,这个相当于多了带换行的功能,要把换过的行记进 PP

用 PA=LUPA=LU解 Ax=bAx=b

由于 PAx=PbPAx=Pb ,因此我们可得 LUx=PbLUx=Pb:

根据Lc=Pb求解c根据Ux=c求解x\begin{array}{rcl} \text{根据}Lc &=& Pb \text{求解c}\\ \text{根据}Ux &=& c\text{求解x} \end{array}

作业

使用PA = LU解线性方程组[132634315][x1x2x3]=[013]\begin{array}{rcl} \left[ \begin{array}{ccc} 1 & 3 & 2 \\ 6 & 3 & 4 \\ 3 & 1 & 5 \end{array} \right] \left[ \begin{array}{c} x_1 \\ x_2 \\ x_3 \end{array} \right] &=& \left[ \begin{array}{c} 0 \\ 1 \\ 3 \end{array} \right] \end{array}

使用PA = LU解线性方程组[3761][x1x2]=[1−11]\begin{array}{rcl} \left[ \begin{array}{cc} 3 & 7 \\ 6 & 1 \end{array} \right] \left[ \begin{array}{c} x_1 \\ x_2 \end{array} \right] &=& \left[ \begin{array}{c} 1 \\ -11 \end{array} \right] \end{array}


迭代法 Iterative Methods(应该不重要?)

引言 Intro

迭代方法与不动点迭代类似。它们从初始猜测值开始,然后在每一步中根据迭代规则对该猜测值进行优化。

x(k+1)=Bx(k)+f\begin{array}{rcl} x^{(k+1)} &=& Bx^{(k)}+f \end{array}

我们将会介绍两种迭代法:雅可比法 和 高斯-赛德尔法


雅可比法 Jacobi

把 AA 拆成对角 + 严格下三角 + 严格上三角:A=D+L+U\begin{array}{rcl} A &=& D+L+U \end{array}

D=[∗∗∗],L=[∗∗∗],U=[∗∗∗]\begin{array}{rcl} D &=& \left[ \begin{array}{ccc} * & & \\ & * & \\ & & * \end{array} \right], \quad L = \left[ \begin{array}{ccc} & & \\ * & & \\ * & * & \end{array} \right], \quad U = \left[ \begin{array}{ccc} & * & * \\ & & * \\ & & \end{array} \right] \end{array}

由 Ax=bAx=b可得

(D+L+U)x=bDx=b−(L+U)xx=−D−1(L+U)x+D−1bx=BJx+fJ\begin{array}{rcl} (D+L+U)x &=& b \\ Dx &=& b-(L+U)x \\ x &=& -D^{-1}(L+U)\,x+D^{-1}b \\ x &=& B_J x+f_J \end{array}

这样,我们就能写出雅可比迭代公式

x(k+1)=−D−1(L+U)x(k)+D−1b=D−1(b−(L+U)x(k))\begin{array}{rcl} x^{(k+1)} &=& -D^{-1}(L+U)x^{(k)}+D^{-1}b \\ &=& D^{-1}\bigl(b-(L+U)x^{(k)}\bigr) \end{array}


高斯-赛德尔法 Gauss-Seidel’s Method

高斯法和雅可比法很像,区别在于高斯法把新的分量也直接算进去了

(D+L+U)x=b(D+L)x=b−Uxx=−(D+L)−1Ux+(D+L)−1b\begin{array}{rcl} (D+L+U)x &=& b \\ (D+L)x &=& b-Ux \\ x &=& -(D+L)^{-1}U\,x+(D+L)^{-1}b \end{array}
BG=−(D+L)−1U,fG=(D+L)−1bx(k+1)=BGx(k)+fGx(k+1)=D−1(b−Ux(k)−Lx(k+1))\begin{array}{rcl} B_G &=& -(D+L)^{-1}U,\qquad f_G=(D+L)^{-1}b\\ x^{(k+1)} &=& B_G x^{(k)}+f_G \\ x^{(k+1)} &=& D^{-1}\bigl(b-Ux^{(k)}-Lx^{(k+1)}\bigr) \\ \end{array}

BGB_G被称为高斯-赛德尔迭代矩阵


例题

求解下列方程组:{8x1−3x2+2x3=204x1+11x2−x3=336x1+3x2+12x3=36\begin{array}{rcl} \left\{\begin{array}{rcr} 8x_1-3x_2+2x_3 &=& 20 \\ 4x_1+11x_2-x_3 &=& 33 \\ 6x_1+3x_2+12x_3 &=& 36 \end{array}\right. \end{array},其精确解为 [3,2,1]T[3,2,1]^{T}


逐次超松弛法 Successive Over-Relaxatio(SOR)

在高斯-赛德尔法的更新方向上多走(或少走)一步,用来加快收敛。

xk+1=xk+rk→overshootsxk+1=xk+ωrk\begin{array}{rcl} x^{k+1} &=& x^{k}+r^{k} \quad\xrightarrow{\text{overshoots}}\quad x^{k+1}=x^{k}+\omega r^{k} \end{array}

目标是选最好的 ω\omega 让收敛更快。

  • 0<ω<10<\omega<1:欠松弛(under-relaxation)
  • ω>1\omega>1:超松弛(over-relaxation)
  • ω=1\omega=1:退回到高斯-赛德尔法

高斯-赛德尔法本身是:

xk+1=D−1(b−Uxk−Lxk+1)\begin{array}{rcl} x^{k+1} &=& D^{-1}(b-Ux^{k}-Lx^{k+1}) \end{array}

于是我们可以求出修正量

rk=xk+1−xk=−xk+D−1(b−Uxk−Lxk+1)\begin{array}{rcl} r^{k} &=& x^{k+1}-x^{k} \\ &=& -x^{k}+D^{-1}(b-Ux^{k}-Lx^{k+1}) \end{array}

乘上 ω\omega

xk+1=xk+ωrk=xk−ωxk+ωD−1(b−Uxk−Lxk+1)=(1−ω)xk+ωD−1(b−Uxk−Lxk+1)\begin{array}{rcl} x^{k+1} &=& x^{k}+\omega r^{k} \\ &=& x^{k}-\omega x^{k}+\omega D^{-1}(b-Ux^{k}-Lx^{k+1}) \\ &=& (1-\omega)x^{k}+\omega D^{-1}(b-Ux^{k}-Lx^{k+1}) \end{array}

新的 xk+1x^{k+1}是当前值 xkx^{k} 和高斯-赛德尔的加权平均。


线性迭代法的收敛性

引言 Intro

方阵 BB 的谱半径 spectral radius 是方针特征值的绝对值的最大值。

ρ(B)=max1≤i≤n⁡|λi|\begin{array}{rcl} \rho(B) &=& \displaystyle\max_{1\le i\le n}|\lambda_i| \end{array}

不会有人忘了什么是特征值吧?求解特征方程 |A − λI|=0 的 λ 即可

若 ρ(B)<1\rho(B)<1,ff任意,则对任何初值 x0x_0​,迭代xk+1=Bxk+f\begin{array}{rcl} x_{k+1} &=& Bx_k+f \end{array}都收敛。存在唯一 x∗x^{*} 使得

limk→∞⁡xk=x∗,x∗=Bx∗+f\begin{array}{rcl} \lim_{k\to\infty}x_k &=& x^{*},\qquad x^{*}=Bx^{*}+f \end{array}


严格对角占优 strictly diagonally dominant

每个对角元的绝对值严格大于同行其余绝对值之和

|aii|>∑j≠i|aij|(1≤i≤n)\begin{array}{rcl} |a_{ii}| &>& \displaystyle\sum_{j\neq i}|a_{ij}| \qquad(1\le i\le n) \end{array}

如果 矩阵 A 严格对角占优 ,那么我们可以得到:

  1. AA 非奇异;(其对应的行列式值为零且矩阵的秩非满秩)
  2. 对任意 bb、任意初值,雅可比和高斯-赛德尔法都收敛到 Ax=bAx=b的唯一解。


收敛条件 Convergent Condition

从前面我们可知,解 Ax=bAx=b 时,迭代 xk=Bxk−1+fx_k=Bx_{k-1}+f是否收敛,可以通过两步看

  1. A 严格对角占优 ⇒\Rightarrow雅可比和高斯-赛德尔法都收敛
  2. ρ(B)<1 则这种迭代收敛,否则不收敛

若某种矩阵范数(PS:没学过线代的我表示又得补课了)满足 ∥B∥=q<1\|B\|=q<1,则收敛,且

(a)‖x∗−xk‖≤q1−q‖xk−xk−1‖(b)‖x∗−xk‖≤qk1−q‖x1−x0‖\begin{array}{rcl} (a) && \|x^{*}-x^{k}\| \le \dfrac{q}{1-q}\|x^{k}-x^{k-1}\| \\[0.8em] (b) && \|x^{*}-x^{k}\| \le \dfrac{q^{k}}{1-q}\|x^{1}-x^{0}\| \end{array}


卡汉必要条件 Kahan necessary condition

AA 非奇异,若 SOR 对任意初值 x0x^{0} 都收敛,则必须满足0<ω<2\begin{array}{rcl} 0 < \omega < 2 \end{array}


作业

用雅可比和高斯-赛德尔法解 {10x1−2x2−2x3=1−2x1+10x2−x3=0.5−x1−2x2+3x3=1\begin{array}{rcl} \left\{\begin{array}{rcr} 10x_1-2x_2-2x_3 &=& 1 \\ -2x_1+10x_2-x_3 &=& 0.5 \\ -x_1-2x_2+3x_3 &=& 1 \end{array}\right. \end{array}

答案:

对 {5x1+2x2+x3=−12−x1+4x2+2x3=202x1−3x2+10x3=3\begin{array}{rcl} \left\{\begin{array}{rcr} 5x_1+2x_2+x_3 &=& -12 \\ -x_1+4x_2+2x_3 &=& 20 \\ 2x_1-3x_2+10x_3 &=& 3 \end{array}\right. \end{array}证明雅可比和高斯-赛德尔法都收敛。

答案:5>2+15>2+1,4>1+24>1+2,10>2+310>2+3(严格对角线占优)

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!