数值计算笔记之线性方程组的直接解法(一)高斯消去法

线性方程组的一般形式:

\left\{\begin{matrix} 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{matrix}\right. \Leftrightarrow AX=\beta

A = [a_{ij}]_{n\times n} ,X = (x_{1},x_{2},\cdots ,x_{n})^{T} ,\beta = (b_{1},b_{2},\cdots ,b_{n})^{T}

解线性方程组的方法;

  • 消元法
  • 克莱姆法则    x_{j}=\frac{D_{j}}{D}
  • 逆矩阵法        x=A^{-}b        

当未知数非常大的时候,求逆是一件工作量非常大的事,所以一般采用消元法。

一、高斯消去法的基本思想

把方程组化成同解的三角形方程组

例:

\left\{\begin{matrix} x_{1}+x_{2}+x_{3} = 6\\ x_{1}+3x_{2}-2x_{3}=1\\ 2x_{1}-2x_{2}+x_{3}=1 \end{matrix}\right. \begin{matrix} \cdots \cdots \cdots 1\\ \cdots \cdots \cdots 2\\ \cdots \cdots \cdots 3 \end{matrix}

利用 1 式将 2,3 式的 x_{1} 消去:

\Rightarrow \left\{\begin{matrix} x_{1}+x_{2}+x_{3}=6 & \cdots 1\\ 2x_{2}-3x_{3}=-5& \cdots 2\\ -4x_{2}-x_{3}=-11& \cdots 3 \end{matrix}\right.

利用 2 式将 3 的x_{2} 消去:

\Rightarrow \left\{\begin{matrix} x_{1}+x_{2}+x_{3}=6\\ 2_{2}-3x_{3}=-5\\ -7x_{3}=-21 \end{matrix}\right.

最后,将数进行回代就可以了,\Rightarrow x_{3}=3, x_{2}=2, x_{1}=1

总结步骤:先消元,再回代。

一般情况下:

  1. 用方程 1 式把 2\sim n 式中的 x_{1}消去,得到 n 个方程记为 1^{'},2^{'},\cdots ,n^{'}
  2. 用 2^{'} 把 3^{'}\sim n^{'}中的 x_{2} 消去;
  3.     \cdots\cdots
  4. 消去最后一个方程的 x_{n-1},得

    数值计算笔记之线性方程组的直接解法(一)高斯消去法_第1张图片

  5. 回代:x_{n} = \frac{g_{n}}{u_{nn}}     , x_{k} = \frac{1}{u_{kk}}(g_{k}-\sum_{j=k+1}^{n}u_{kj}x_{j})     (k=n-1,n-2,\cdots ,1)

 

二、高斯主元素消去法

当主元素 

  1. 为零
  2. 非常小    (误差会非常大)

那么就不适合用高斯消元法。

故就有了高斯主元素消去法。

基本思想:在进行第 k 次消元时,先考察方程 k~n 中的 x_{k} 的系数,然后找出其中绝对值最大者作为“主元素”(换行

例:

\begin{bmatrix} 11 &-3 &-2 \\ -23 & 11 &1 \\ 1& -2 & 2 \end{bmatrix}\begin{bmatrix} x_{1}\\ x_{2}\\ x_{3} \end{bmatrix}=\begin{bmatrix} 3\\ 0\\ -1 \end{bmatrix}

解:增广矩阵

 [A|b] = \begin{bmatrix} 11 & -3 &-2 &3 \\ -23 &11 &1 & 0\\ 1 &-2 & 2 & -1 \end{bmatrix}\Rightarrow \begin{bmatrix} -23 & 11 & 1 &0 \\ 11 & -3&-2 &3 \\ 1 & -2 & 2 &-1 \end{bmatrix} \Rightarrow \begin{bmatrix} -23 & 11 & 1 & 0\\ 0& 2.261 & -1.522 &3 \\ 0& -1.522&2.044 & -1 \end{bmatrix}\Rightarrow \begin{bmatrix} -23&11 & 1&0 \\ 0& 2.261& -1.522& 3 \\ 0 &0 & 1.019 & 1.020 \end{bmatrix}

回代得:

\begin{bmatrix} x_{1}\\ x_{2}\\ x_{3} \end{bmatrix} = \begin{bmatrix} 1.001\\ 2.001\\ 1.000 \end{bmatrix}

你可能感兴趣的:(数值计算)