数值分析与算法设计--高斯列主元消去法
高斯列主元消去法
题目
使用 高斯列主元消去法求解如下线性方程组:
$$
\begin{cases}
12x_1 - 3x_2 + 3x_3 = 15 \quad \text{(1)}\
-18x_1 + 3x_2 - x_3 = -15 \quad \text{(2)}\
x_1 + x_2 + x_3 = 6 \quad \text{(3)}
\end{cases}
$$
解答
点击查看答案
写出增广矩阵
$$
\left[
\begin{array}{ccc|c}
12 & -3 & 3 & 15 \
-18 & 3 & -1 & -15 \
1 & 1 & 1 & 6
\end{array}
\right]
$$
第1列选主元
第1列元素绝对值:
|12| = 12,
|−18| = 18 ← 最大,
|1| = 1
主元为 −18,位于第2行 → 将第1行与第2行交换:
$$
\left[
\begin{array}{ccc|c}
-18 & 3 & -1 & -15 \quad \text{(R1)}\
12 & -3 & 3 & 15 \quad \text{(R2)}\
1 & 1 & 1 & 6 \quad \text{(R3)}
\end{array}
\right]
$$
注:列主元只在当前列下方(含当前行)找最大,不考虑符号,取绝对值最大者。
消去第1列下方元素
计算乘子:
- $ m_{21} = \frac{a_{21}}{a_{11}} = \frac{12}{-18} = -\frac{2}{3} $
- $ m_{31} = \frac{1}{-18} = -\frac{1}{18} $
行变换:
- $ R_2 \leftarrow R_2 - m_{21} R_1 = R_2 + \frac{2}{3} R_1 $
- $ R_3 \leftarrow R_3 - m_{31} R_1 = R_3 + \frac{1}{18} R_1 $
计算新 R₂:
$$
\begin{aligned}
R_2 &: [12,\ -3,\ 3\ |\ 15] \
+\frac{2}{3}R_1 &: +\frac{2}{3}[-18,\ 3,\ -1\ |\ -15] = [-12,\ 2,\ -\frac{2}{3}\ |\ -10] \
\Rightarrow R_2’ &: [0,\ -1,\ \frac{7}{3}\ |\ 5]
\end{aligned}
$$
计算新 R₃:
$$
\begin{aligned}
R_3 &: [1,\ 1,\ 1\ |\ 6] \
+\frac{1}{18}R_1 &: +\frac{1}{18}[-18,\ 3,\ -1\ |\ -15] = [-1,\ \frac{1}{6},\ -\frac{1}{18}\ |\ -\frac{5}{6}] \
\Rightarrow R_3’ &: [0,\ \frac{7}{6},\ \frac{17}{18}\ |\ \frac{31}{6}]
\end{aligned}
$$
当前矩阵为:
$$
\left[
\begin{array}{ccc|c}
-18 & 3 & -1 & -15 \
0 & -1 & \frac{7}{3} & 5 \
0 & \frac{7}{6} & \frac{17}{18} & \frac{31}{6}
\end{array}
\right]
$$
第2列选主元
第2列下方元素(从第2行开始):
- $ |a_{22}| = |-1| = 1 $
- $ |a_{32}| = \left|\frac{7}{6}\right| \approx 1.1667 $ ← 更大!
→ 主元为 $ \frac{7}{6} $,在第3行 → 交换第2行和第3行
$$
\left[
\begin{array}{ccc|c}
-18 & 3 & -1 & -15 \quad \text{(R1)}\
0 & \frac{7}{6} & \frac{17}{18} & \frac{31}{6} \quad \text{(R2)}\
0 & -1 & \frac{7}{3} & 5 \quad \text{(R3)}
\end{array}
\right]
$$
消去第2列下方元素
计算乘子:
$$
m_{32} = \frac{a_{32}}{a_{22}} = \frac{-1}{7/6} = -\frac{6}{7}
$$
行变换:
$$
R_3 \leftarrow R_3 - m_{32} R_2 = R_3 + \frac{6}{7} R_2
$$
先算 $ \frac{6}{7} R_2 $:
$$
\frac{6}{7} \cdot \left[0,\ \frac{7}{6},\ \frac{17}{18},\ \frac{31}{6}\right]
= \left[0,\ 1,\ \frac{6}{7} \cdot \frac{17}{18},\ \frac{6}{7} \cdot \frac{31}{6} \right]
= \left[0,\ 1,\ \frac{102}{126} = \frac{17}{21},\ \frac{31}{7} \right]
$$
加到 R₃ 上:
R₃ 原为:$ [0,\ -1,\ \frac{7}{3},\ 5] $
$$
\begin{aligned}
\text{新 } R_3 &: [0,\ -1+1,\ \frac{7}{3} + \frac{17}{21},\ 5 + \frac{31}{7}] \
&= [0,\ 0,\ \frac{49}{21} + \frac{17}{21},\ \frac{35}{7} + \frac{31}{7}] \
&= [0,\ 0,\ \frac{66}{21} = \frac{22}{7},\ \frac{66}{7}]
\end{aligned}
$$
得到上三角矩阵:
$$
\left[
\begin{array}{ccc|c}
-18 & 3 & -1 & -15 \
0 & \frac{7}{6} & \frac{17}{18} & \frac{31}{6} \
0 & 0 & \frac{22}{7} & \frac{66}{7}
\end{array}
\right]
$$
回代求解
从最后一行开始:
第3行:
$$
\frac{22}{7} x_3 = \frac{66}{7} \Rightarrow x_3 = \frac{66/7}{22/7} = \frac{66}{22} = 3
$$
第2行:
$$
\frac{7}{6} x_2 + \frac{17}{18} x_3 = \frac{31}{6}
\Rightarrow \frac{7}{6} x_2 + \frac{17}{18} \cdot 3 = \frac{31}{6}
\Rightarrow \frac{7}{6} x_2 + \frac{51}{18} = \frac{31}{6}
$$
化简:$ \frac{51}{18} = \frac{17}{6} $,右边 $ \frac{31}{6} $
$$
\frac{7}{6} x_2 = \frac{31}{6} - \frac{17}{6} = \frac{14}{6} = \frac{7}{3}
\Rightarrow x_2 = \frac{7}{3} \cdot \frac{6}{7} = 2
$$
第1行:
$$
-18 x_1 + 3 x_2 - x_3 = -15
\Rightarrow -18 x_1 + 3 \cdot 2 - 3 = -15
\Rightarrow -18 x_1 + 6 - 3 = -15
\Rightarrow -18 x_1 + 3 = -15
\Rightarrow -18 x_1 = -18
\Rightarrow x_1 = 1
$$
最终解:
$$
\boxed{
x_1 = 1,\quad x_2 = 2,\quad x_3 = 3
}
$$
验算(代入原方程):
- $ 12(1) - 3(2) + 3(3) = 12 - 6 + 9 = 15 $
- $ -18(1) + 3(2) - 1(3) = -18 + 6 - 3 = -15 $
- $ 1 + 2 + 3 = 6 $
考点总结(高斯列主元消去法)
| 考点 | 说明 |
|---|---|
| 列主元选取 | 每步在当前列(从对角元开始往下)选绝对值最大元素所在行,与当前行交换,避免小主元导致的数值不稳定 |
| 乘子计算 | $ m_{ij} = a_{ij}^{(k)} / a_{kk}^{(k)} $,用于消元 |
| 行变换 | $ R_i \leftarrow R_i - m_{ij} R_k $,仅修改下方行 |
| 上三角回代 | 从最后一行向上代入,注意分数运算或用小数保留精度 |
| 复杂度 | $ O(n^3) $,适用于中小规模稠密系统 |
| 与全主元区别 | 全主元在右下子矩阵中找最大元(行列都可交换),更稳定但开销大;列主元更常用 |
- Title: 数值分析与算法设计--高斯列主元消去法
- Author: 姜智浩
- Created at : 2026-01-17 11:45:14
- Updated at : 2026-01-17 13:42:25
- Link: https://super-213.github.io/zhihaojiang.github.io/2026/01/17/20260117数值分析与算法设计--高斯列主元消去法/
- License: This work is licensed under CC BY-NC-SA 4.0.