5.2高斯消元法
高斯消去法 深度讲解与完整推导证明
作为求解n阶线性方程组的经典直接解法,高斯消去法的核心思想是:通过行初等倍加变换,将原满秩线性方程组等价转化为上三角线性方程组,再通过自下而上的回代过程求解。以下将从直观示例、一般化推导、定理证明、计算量分析四个维度展开,最后以表格形式完成知识点归纳。
一、核心思想与直观示例
1.1 基础前提
设有n阶线性方程组 \(Ax=b\),其中系数矩阵 \(A\in\mathbb{R}^{n\times n}\),右端项 \(b\in\mathbb{R}^n\)。当且仅当\(A\)非奇异(可逆,\(\det(A)\neq0\))时,方程组存在唯一解。
1.2 直观示例(教材例5.1)
求解方程组:
步骤1:消元过程(转化为上三角方程组)
-
第1步:消去\(x_1\)
目标:将第3行\(x_1\)的系数消为0。用第3行减去\(2\times\)第1行,即 \(r_3=r_3-2r_1\),得:\[-4x_2 -x_3 = -11 \quad (4) \]方程组变为:
\[\begin{cases} x_1 + x_2 + x_3 = 6\\ 4x_2 - x_3 =5\\ -4x_2 -x_3 =-11 \end{cases} \] -
第2步:消去\(x_2\)
目标:将第3行\(x_2\)的系数消为0。用第3行加上\(1\times\)第2行,即 \(r_3=r_3+r_2\),得:\[-2x_3 = -6 \]最终得到等价上三角方程组:
\[\begin{cases} x_1 + x_2 + x_3 = 6\\ 4x_2 - x_3 =5\\ -2x_3 =-6 \end{cases} \]
步骤2:回代过程(自下而上求解)
- 第3行:\(x_3 = \frac{-6}{-2}=3\)
- 代入第2行:\(4x_2 -3=5 \implies x_2=2\)
- 代入第1行:\(x_1 +2+3=6 \implies x_1=1\)
最终解为 \(x=(1,2,3)^T\),对应增广矩阵的行变换为:
二、顺序高斯消去法的一般化推导
我们将初始方程组记为 \(A^{(1)}x=b^{(1)}\),其中 \(A^{(1)}=A\),\(b^{(1)}=b\),元素记为 \(a_{ij}^{(1)}=a_{ij}\),\(b_i^{(1)}=b_i\);上标\((k)\)表示第\(k\)步消元后的结果。
2.1 消元过程(共\(n-1\)步,核心目标:将\(A\)化为上三角矩阵)
第\(k\)步消元的通用规则(\(k=1,2,\dots,n-1\))
前提条件:第\(k\)步主元 \(a_{kk}^{(k)}\neq0\)(主元为消元时对角线上的核心元素)。
-
计算消元乘数
对第\(i\)行(\(i=k+1,k+2,\dots,n\)),乘数为:\[m_{ik} = \frac{a_{ik}^{(k)}}{a_{kk}^{(k)}} \]乘数的意义:用第\(i\)行减去\(m_{ik}\times\)第\(k\)行,可将第\(i\)行第\(k\)列的元素消为0。
-
行变换更新矩阵与右端项
对\(i,j=k+1,k+2,\dots,n\),更新公式为:\[\begin{cases} a_{ij}^{(k+1)} = a_{ij}^{(k)} - m_{ik}a_{kj}^{(k)} \\ b_{i}^{(k+1)} = b_{i}^{(k)} - m_{ik}b_{k}^{(k)} \end{cases} \]注:前\(k\)行元素完全不变,第\(k\)列\(i>k\)的元素全部消为0。
-
消元最终结果
经过\(n-1\)步消元,得到与原方程组等价的上三角方程组 \(A^{(n)}x=b^{(n)}\):\[\begin{pmatrix} a_{11}^{(1)} & a_{12}^{(1)} & \dots & a_{1n}^{(1)} \\ & a_{22}^{(2)} & \dots & a_{2n}^{(2)} \\ & & \ddots & \vdots \\ & & & a_{nn}^{(n)} \end{pmatrix} \begin{pmatrix} x_1 \\ x_2 \\ \vdots \\ x_n \end{pmatrix} = \begin{pmatrix} b_1^{(1)} \\ b_2^{(2)} \\ \vdots \\ b_n^{(n)} \end{pmatrix} \]
2.2 回代过程(自下而上求解上三角方程组)
- 求解最后一个变量:\[x_n = \frac{b_n^{(n)}}{a_{nn}^{(n)}} \]
- 反向求解剩余变量(\(k=n-1,n-2,\dots,1\)):\[x_k = \frac{1}{a_{kk}^{(k)}} \left( b_k^{(k)} - \sum_{j=k+1}^n a_{kj}^{(k)}x_j \right) \]
三、核心定理的完整证明
3.1 定理5.5 高斯消去法可行性定理
定理内容
设\(Ax=b\),其中\(A\in\mathbb{R}^{n\times n}\):
- 若各步主元\(a_{kk}^{(k)}\neq0\)(\(k=1,2,\dots,n\)),则可通过顺序高斯消去法将\(Ax=b\)约化为等价上三角方程组,且消元、回代公式如上述推导。
- 若\(A\)为非奇异矩阵,则可通过高斯消去法(含行交换初等变换)将\(Ax=b\)约化为上三角方程组。
详细证明
-
第一部分证明(主元非零→消元可行)
采用数学归纳法:- 基例:\(k=1\)时,\(a_{11}^{(1)}\neq0\),可完成第1步消元,得到\(A^{(2)}\),命题成立。
- 归纳假设:假设前\(k-1\)步主元\(a_{11}^{(1)},\dots,a_{k-1,k-1}^{(k-1)}\)均非零,已完成\(k-1\)步消元得到\(A^{(k)}\)。
- 归纳步骤:第\(k\)步主元\(a_{kk}^{(k)}\neq0\),可计算乘数\(m_{ik}\),完成第\(k\)步消元,消去第\(k\)列\(i>k\)的元素,得到\(A^{(k+1)}\)。
- 直到\(k=n-1\)步完成,得到上三角矩阵\(A^{(n)}\),所有主元非零,回代过程可顺利完成。
-
第二部分证明(A非奇异→消元可行)
同样采用数学归纳法:- 基例:\(n=1\)时,\(A=(a_{11})\),\(A\)非奇异则\(a_{11}\neq0\),已是上三角,命题成立。
- 归纳假设:假设\(n-1\)阶非奇异矩阵可通过行交换+高斯消元化为上三角矩阵。
- 归纳步骤:对\(n\)阶非奇异矩阵\(A\),其第1列必不全为0(否则\(\det(A)=0\),与非奇异矛盾),因此存在\(i_1\in\{1,\dots,n\}\)使得\(a_{i_11}\neq0\)。交换第1行与\(i_1\)行,得到主元非零的矩阵,完成第1步消元,得到:\[\tilde{A} = \begin{pmatrix} a_{11}' & * \\ 0 & A_{n-1} \end{pmatrix} \]行变换不改变矩阵奇异性,因此\(\det(\tilde{A})=\pm\det(A)\neq0\),而\(\det(\tilde{A})=a_{11}'\cdot\det(A_{n-1})\),故\(A_{n-1}\)为\(n-1\)阶非奇异矩阵。根据归纳假设,\(A_{n-1}\)可化为上三角矩阵,因此整个\(\tilde{A}\)可化为上三角矩阵,命题得证。
3.2 定理5.6 主元非零的充要条件定理
定理内容
约化主元\(a_{ii}^{(i)}\neq0\)(\(i=1,2,\dots,k\))的充要条件是:矩阵\(A\)的前\(k\)阶顺序主子式\(D_i\neq0\)(\(i=1,2,\dots,k\))。
其中,\(i\)阶顺序主子式定义为:
详细证明
需分别证明充分性和必要性,核心依据:倍加行变换不改变行列式的值,因此高斯消元不改变矩阵的顺序主子式。
-
充分性证明(\(D_i\neq0 \implies a_{ii}^{(i)}\neq0\))
- 基例:\(k=1\)时,\(D_1=a_{11}=a_{11}^{(1)}\),\(D_1\neq0\)等价于\(a_{11}^{(1)}\neq0\),成立。
- 归纳假设:假设对\(k-1\),充分性成立,即\(D_1,\dots,D_{k-1}\neq0\)可推出\(a_{11}^{(1)},\dots,a_{k-1,k-1}^{(k-1)}\neq0\)。
- 归纳步骤:已知\(D_1,\dots,D_k\neq0\),根据归纳假设,前\(k-1\)个主元非零,可完成前\(k-1\)步消元,得到前\(k\)阶子矩阵:\[A_k^{(k)} = \begin{pmatrix} a_{11}^{(1)} & a_{12}^{(1)} & \dots & a_{1k}^{(1)} \\ & a_{22}^{(2)} & \dots & a_{2k}^{(2)} \\ & & \ddots & \vdots \\ & & & a_{kk}^{(k)} \end{pmatrix}\]顺序主子式\(D_k=\det(A_k^{(k)})=a_{11}^{(1)}a_{22}^{(2)}\dots a_{kk}^{(k)}\)(上三角矩阵行列式等于主元乘积)。
因\(D_k\neq0\),且前\(k-1\)个主元非零,故\(a_{kk}^{(k)}=\frac{D_k}{a_{11}^{(1)}\dots a_{k-1,k-1}^{(k-1)}}\neq0\),充分性得证。
-
必要性证明(\(a_{ii}^{(i)}\neq0 \implies D_i\neq0\))
若\(a_{11}^{(1)},\dots,a_{kk}^{(k)}\neq0\),则对任意\(i=1,\dots,k\),有:\[D_i = a_{11}^{(1)}a_{22}^{(2)}\dots a_{ii}^{(i)} \]所有主元非零,故乘积\(D_i\neq0\),必要性得证。
3.3 推论证明
推论内容
若\(A\)的顺序主子式\(D_k\neq0\)(\(k=1,2,\dots,n-1\)),则:
证明
由定理5.6的结论,对\(k\geq2\):
两式相除得:\(\frac{D_k}{D_{k-1}}=a_{kk}^{(k)}\),推论得证。
四、高斯消去法计算量完整推导
数值计算中,乘除法的运算耗时远高于加减法,因此核心关注乘除法次数,同时给出加减法次数。
4.1 消元过程计算量
第\(k\)步消元的运算量:
- 乘除法:\((n-k) + (n-k)^2 + (n-k) = (n-k)^2 + 2(n-k)\)
- 加减法:\((n-k)^2 + (n-k)\)
对\(k=1\)到\(n-1\)求和(令\(t=n-k\)):
- 消元乘除法总次数:\(\sum_{t=1}^{n-1}(t^2+2t) = \frac{(n-1)n(2n+5)}{6}\)
- 消元加减法总次数:\(\sum_{t=1}^{n-1}(t^2+t) = \frac{n(n-1)(n+1)}{3}\)
4.2 回代过程计算量
- 回代乘除法总次数:\(\frac{n(n+1)}{2}\)
- 回代加减法总次数:\(\frac{n(n-1)}{2}\)
4.3 总计算量
- 总乘除法次数:\(\frac{n^3}{3} + n^2 - \frac{n}{3}\),当\(n\)很大时,主导项为\(\frac{n^3}{3}\)
- 总加减法次数:\(\frac{n^3}{3} + \frac{n^2}{2} - \frac{5n}{6}\),当\(n\)很大时,主导项为\(\frac{n^3}{3}\)
结论:高斯消去法的时间复杂度为\(O(n^3)\),远优于克莱姆法则的\(O(n!)\),是中小规模线性方程组的首选解法。
五、知识点归纳总结表
| 分类 | 核心内容 | 关键公式/结论 |
|---|---|---|
| 核心定位 | 求解\(n\)阶线性方程组\(Ax=b\)的经典直接法,核心是行初等变换+回代求解 | 适用前提:\(A\)非奇异(方程组有唯一解) |
| 两大核心过程 | 1. 消元过程:将原方程组化为等价上三角方程组 2. 回代过程:自下而上求解上三角方程组 |
消元公式:\(a_{ij}^{(k+1)} = a_{ij}^{(k)} - \frac{a_{ik}^{(k)}}{a_{kk}^{(k)}}a_{kj}^{(k)}\) 回代公式:\(x_k = \frac{1}{a_{kk}^{(k)}} \left( b_k^{(k)} - \sum_{j=k+1}^n a_{kj}^{(k)}x_j \right)\) |
| 核心定理1 | 消元可行性定理 | 1. 主元\(a_{kk}^{(k)}\neq0\)(\(k=1,\dots,n\))→ 顺序高斯消去法可行 2. \(A\)非奇异 → 可通过行交换+高斯消去法完成约化 |
| 核心定理2 | 主元非零的充要条件 | 主元\(a_{ii}^{(i)}\neq0\)(\(i=1,\dots,k\))\(\iff\) 顺序主子式\(D_i\neq0\)(\(i=1,\dots,k\)) |
| 核心推论 | 主元与顺序主子式的关系 | \(a_{11}^{(1)}=D_1\),\(a_{kk}^{(k)}=\frac{D_k}{D_{k-1}}\)(\(k\geq2\)) |
| 计算量 | 大规模方程组的运算效率 | 总乘除法次数≈\(\frac{n^3}{3}\),时间复杂度\(O(n^3)\) |
| 局限性 | 顺序高斯消去法的缺陷 | 主元绝对值过小时,乘数\(m_{ik}\)会放大舍入误差,实际应用中需采用列主元高斯消去法 |
矩阵的三角分解(LU分解) 深度讲解与完整推导
承接上一节顺序高斯消去法的内容,本节将通过矩阵理论揭示高斯消去法的本质——矩阵的LU三角分解,这是数值线性代数中求解线性方程组、矩阵求逆、行列式计算的核心基础工具。以下将从消元的矩阵表示、分解推导、定理证明、数值示例、应用价值五个维度展开,最终完成知识点归纳。
一、核心铺垫:高斯消去法的矩阵表示
顺序高斯消去的每一步行变换,都等价于对矩阵左乘一个初等倍加矩阵(消元矩阵),这是连接高斯消去与LU分解的核心桥梁。
1.1 第k步消元矩阵\(L_k\)的定义与结构
在顺序高斯消去的第k步,我们的目标是消去第k列中\(i>k\)的所有元素(将\(x_k\)的系数化为0),对应的初等矩阵称为第k步消元矩阵,记为\(L_k\),其结构为:
其中\(m_{ik} = \frac{a_{ik}^{(k)}}{a_{kk}^{(k)}}\)(\(i=k+1,\dots,n\))为消元乘数,核心性质:
- \(L_k\)是单位下三角矩阵(对角线全为1,上三角部分全为0);
- 仅在第k列的\(i>k\)位置有非零元\(-m_{ik}\),其余位置均为0。
1.2 消元矩阵的逆矩阵
倍加型初等矩阵的逆矩阵仅需将非对角元的符号取反,即:
严格证明:设\(L_k = I - M_k\),其中\(M_k\)是仅在\((i,k)\)(\(i>k\))位置有元素\(m_{ik}\)的矩阵,其余为0,则\(L_k^{-1} = I + M_k\)。
计算乘积:
由于\(M_k\)的非零元仅在第k列,\(M_k^2\)的所有元素全为0,因此\(L_k \cdot L_k^{-1}=I\),逆矩阵得证。
二、LU分解的完整推导
顺序高斯消去法通过n-1步消元,将初始矩阵\(A^{(1)}=A\)化为上三角矩阵\(U=A^{(n)}\),每一步的矩阵变换为:
将所有消元步骤串联,得到完整的变换链:
对等式两边依次左乘\(L_{n-1}^{-1}, L_{n-2}^{-1}, \dots, L_1^{-1}\),消去左侧的消元矩阵,得到:
2.1 单位下三角矩阵L的构造
定义\(L = L_1^{-1} L_2^{-1} \dots L_{n-1}^{-1}\),我们证明:L是单位下三角矩阵,且下三角元素恰好为消元乘数\(m_{ik}\)。
- 单位下三角性质:每个\(L_k^{-1}\)都是单位下三角矩阵,而单位下三角矩阵的乘积仍为单位下三角矩阵(对角线始终为1,上三角部分全为0),因此L是单位下三角矩阵。
- 元素结构:由于不同\(L_k^{-1}\)的非零元位于不同列,相乘时无元素抵消,直接叠加即可。以3阶矩阵为例:\[L_1^{-1} = \begin{pmatrix}1&0&0\\m_{21}&1&0\\m_{31}&0&1\end{pmatrix}, \quad L_2^{-1} = \begin{pmatrix}1&0&0\\0&1&0\\0&m_{32}&1\end{pmatrix} \]相乘得:\[L = L_1^{-1}L_2^{-1} = \begin{pmatrix}1&0&0\\m_{21}&1&0\\m_{31}&m_{32}&1\end{pmatrix} \]
由此,我们得到矩阵的LU三角分解:
其中:
- L:单位下三角矩阵(对角线全为1),下三角元素为高斯消去的乘数\(m_{ik}\);
- U:上三角矩阵,为顺序高斯消去最终得到的上三角矩阵。
这种分解也称为Doolittle分解,是最常用的三角分解形式。
三、LU分解的存在唯一性定理(定理5.7)
定理内容
设n阶方阵A的顺序主子式\(D_i \neq 0\)(\(i=1,2,\dots,n-1\)),则A可以唯一地分解为一个单位下三角矩阵L和一个上三角矩阵U的乘积\(A=LU\)。
完整证明
分存在性和唯一性两部分分别证明。
3.1 存在性证明
由上一节的定理5.6可知:矩阵A的顺序主子式\(D_i \neq 0\)(\(i=1,\dots,n-1\)),等价于高斯消去的所有主元\(a_{kk}^{(k)} \neq 0\)(\(k=1,\dots,n-1\))。
主元全非零,则顺序高斯消去法可完整执行n-1步,通过上述矩阵变换推导,必然可构造出单位下三角矩阵L和上三角矩阵U,使得\(A=LU\),存在性得证。
3.2 唯一性证明
在A非奇异的条件下证明(奇异情况可同理推广)。
假设A存在两种不同的LU分解:
其中\(L, L_1\)为单位下三角矩阵,\(U, U_1\)为上三角矩阵。
由于A非奇异,因此\(L, L_1, U, U_1\)均为可逆矩阵。对等式\(LU = L_1 U_1\),两边左乘\(L^{-1}\)、右乘\(U_1^{-1}\),得:
分析等式两边的矩阵性质:
- 左侧:单位下三角矩阵的逆仍是单位下三角矩阵,两个单位下三角矩阵的乘积仍是单位下三角矩阵,因此左侧是单位下三角矩阵;
- 右侧:上三角矩阵的逆仍是上三角矩阵,两个上三角矩阵的乘积仍是上三角矩阵,因此右侧是上三角矩阵。
一个矩阵既是单位下三角矩阵、又是上三角矩阵,只能是单位矩阵I。因此:
唯一性得证。
四、数值示例(例5.2 完整拆解)
承接上一节的例5.1,对系数矩阵A做LU分解。
已知系数矩阵:
步骤1:执行高斯消去,计算消元乘数
-
第1步消元(k=1):主元\(a_{11}^{(1)}=1\)
消元乘数:\(m_{21}=\frac{0}{1}=0\),\(m_{31}=\frac{2}{1}=2\)
行变换\(r_3=r_3-2r_1\),得:\[A^{(2)} = \begin{pmatrix}1&1&1\\0&4&-1\\0&-4&-1\end{pmatrix} \] -
第2步消元(k=2):主元\(a_{22}^{(2)}=4\)
消元乘数:\(m_{32}=\frac{-4}{4}=-1\)
行变换\(r_3=r_3+r_2\),得上三角矩阵U:\[U = A^{(3)} = \begin{pmatrix}1&1&1\\0&4&-1\\0&0&-2\end{pmatrix} \]
步骤2:构造单位下三角矩阵L
L的对角线全为1,下三角元素为消元乘数:
步骤3:验证分解正确性
计算\(LU\)的乘积:
分解完全正确。
五、LU分解的核心应用价值
- 揭示高斯消去的本质:顺序高斯消去的过程,就是对矩阵A做LU分解的过程,消元结果对应上三角矩阵U,消元乘数直接构成单位下三角矩阵L。
- 大幅提升多右端项方程组的求解效率:当求解多个同系数、不同右端项的方程组\(Ax=b_1,Ax=b_2,\dots,Ax=b_m\)时,仅需对A做一次LU分解(计算量\(O(n^3)\)),后续每个右端项仅需解两个三角方程组\(Ly=b\)和\(Ux=y\)(计算量\(O(n^2)\)),无需重复执行高斯消元。
- 是数值线性代数的基础工具:广泛应用于矩阵求逆、行列式计算、线性方程组迭代法预处理等场景。
六、知识点归纳总结表
| 分类 | 核心内容 | 关键结论/公式 |
|---|---|---|
| 核心定义 | LU分解(Doolittle分解):将n阶方阵A分解为单位下三角矩阵L和上三角矩阵U的乘积 | \(A=LU\),L对角线全为1,U为上三角矩阵 |
| 核心关联 | 高斯消去与LU分解的关系 | 高斯消去的消元过程等价于构造L和U,U是消元得到的上三角矩阵,L的元素是消元乘数\(m_{ik}\) |
| 消元矩阵性质 | 第k步消元矩阵\(L_k\)的逆矩阵 | \(L_k\)是单位下三角矩阵,\(L_k^{-1}\)仅需将\(L_k\)的非对角元取反 |
| 存在唯一性定理 | LU分解的前提条件 | 充要条件:A的前n-1阶顺序主子式\(D_i \neq 0\)(\(i=1,\dots,n-1\)),此时分解唯一 |
| L的构造规则 | 单位下三角矩阵L的元素 | 对角线全为1;\(L(i,k)=m_{ik}\)(\(i>k\)),\(m_{ik}\)为第k步消元的乘数 |
| 求解流程 | 用LU分解解\(Ax=b\) | 1. 对A做LU分解,得\(A=LU\);2. 解下三角方程组\(Ly=b\)得y;3. 解上三角方程组\(Ux=y\)得x |
| 核心优势 | 实际应用价值 | 一次分解可多次求解不同右端项的方程组,计算量从\(m\cdot O(n^3)\)降为\(O(n^3)+m\cdot O(n^2)\) |
列主元高斯消去法 深度讲解与完整推导证明
作为顺序高斯消去法的核心改进版本,列主元消去法是工程与科学计算中求解线性方程组最常用的稳定直接解法,彻底解决了顺序高斯消去法的消元中断与数值不稳定问题。以下将从方法背景、核心思想、数值示例、算法流程、矩阵理论推导、核心定理证明、特性对比七个维度展开,最终完成知识点的结构化归纳。
一、方法提出的背景:顺序高斯消去法的致命缺陷
顺序高斯消去法在实际数值计算中存在两个无法回避的问题,直接导致其在工程中几乎无法单独使用:
1.1 消元过程中断问题
当消元过程中某一步的主元 \(a_{kk}^{(k)}=0\) 时,消元乘数 \(m_{ik}=a_{ik}^{(k)}/a_{kk}^{(k)}\) 无法计算,消元过程直接中断。
示例:对于非奇异矩阵 \(A=\begin{pmatrix}0&1\\1&0\end{pmatrix}\),顺序高斯消去第一步主元为0,直接无法计算,但矩阵本身可逆,方程组有唯一解。
1.2 数值不稳定问题(舍入误差急剧放大)
即使主元 \(a_{kk}^{(k)}\neq0\),若其绝对值极小,消元乘数 \(|m_{ik}|\) 会远大于1,导致消元过程中矩阵元素的数量级暴涨,计算机有限精度下的舍入误差被急剧放大,最终得到的解完全失真。
这是顺序高斯消去法最核心的缺陷,也是列主元消去法要解决的核心问题。
二、列主元消去法的核心思想与数值示例
2.1 核心思想
在每一步消元前,在当前列的主元行及以下的所有行中,选取绝对值最大的元素作为主元,通过行交换将该主元移到当前对角线上,再执行消元操作。
核心优势:保证所有消元乘数满足 \(|m_{ik}|\leq1\),从根源上避免了舍入误差的放大,同时只要矩阵非奇异,必然能选到非零主元,解决消元中断问题。
2.2 数值示例(例5.3 完整拆解)
求解3阶线性方程组,采用4位有效数字浮点计算:
方程组的精确解(4位有效数字)为:\(\boldsymbol{x^*}=(-0.4904,\ -0.0510,\ 0.3675)^T\)
方法1:顺序高斯消去法(失效案例)
- 第1步消元:主元 \(a_{11}=0.001\),计算消元乘数\[m_{21}=\frac{-1.000}{0.001}=-1000,\quad m_{31}=\frac{-2.000}{0.001}=-2000 \]乘数绝对值远大于1,执行行变换后矩阵变为:\[\begin{pmatrix}0.001&2.000&3.000&1.000\\0&2004&3005&1002\\0&4001&6006&2003\end{pmatrix} \]
- 第2步消元:主元 \(a_{22}=2004\),乘数 \(m_{32}\approx1.997\),消元后得到上三角矩阵:\[\begin{pmatrix}0.001&2.000&3.000&1.000\\0&2004&3005&1002\\0&0&5.015&2.006\end{pmatrix} \]
- 回代求解得到:\(\bar{x}=(-0.3992,\ -0.0998,\ 0.4000)^T\),与精确解偏差极大,完全不可用。
误差根源:极小主元导致乘数过大,元素数量级暴涨,舍入误差被放大了上千倍。
方法2:列主元消去法(稳定求解)
- 第1步:选主元+行交换
第1列元素为 \(0.001,\ -1.000,\ -2.000\),绝对值最大的主元为 \(-2.000\)(第3行),交换第1行与第3行,增广矩阵变为:\[\begin{pmatrix}-2.000&1.072&5.643&3.000\\-1.000&3.712&4.623&2.000\\0.001&2.000&3.000&1.000\end{pmatrix} \] - 第1步消元:主元 \(a_{11}=-2.000\),计算乘数\[m_{21}=\frac{-1.000}{-2.000}=0.5000,\quad m_{31}=\frac{0.001}{-2.000}=-0.0005 \]满足 \(|m_{ik}|\leq1\),执行行变换后矩阵变为:\[\begin{pmatrix}-2.000&1.072&5.643&3.000\\0&3.176&1.802&0.5000\\0&2.001&3.003&1.002\end{pmatrix} \]
- 第2步:选主元+行交换
第2列的第2、3行元素为 \(3.176,\ 2.001\),绝对值最大的主元为 \(3.176\)(第2行),无需换行。 - 第2步消元:主元 \(a_{22}=3.176\),乘数 \(m_{32}=\frac{2.001}{3.176}\approx0.6300\),满足 \(|m_{ik}|\leq1\),消元后得到上三角矩阵:\[\begin{pmatrix}-2.000&1.072&5.643&3.000\\0&3.176&1.802&0.5000\\0&0&1.868&0.6870\end{pmatrix} \]
- 回代求解:\[x_3=\frac{0.6870}{1.868}\approx0.3678,\quad x_2=\frac{0.5000-1.802\times0.3678}{3.176}\approx-0.05127,\quad x_1\approx-0.4897 \]最终解 \(\boldsymbol{x}=(-0.4897,\ -0.05127,\ 0.3678)^T\),与精确解几乎一致,误差完全在可接受范围内。
三、列主元消去法的完整算法流程
算法针对 \(n\) 阶非奇异线性方程组 \(Ax=b\),实现带列主元的高斯消去,同时可计算矩阵 \(A\) 的行列式,工程上采用原地存储优化(消元乘数覆盖原矩阵下三角区域)。
算法5.1 列主元高斯消去法
输入:\(n\) 阶系数矩阵 \(A\),\(n\) 维右端项 \(b\)
输出:方程组的解 \(x\),矩阵 \(A\) 的行列式 \(\det\)
- 初始化:行列式 \(\det \leftarrow 1\)
- 消元过程(共 \(n-1\) 步,\(k=1,2,\dots,n-1\))
(1) 选列主元:在第 \(k\) 列的行范围 \([k,n]\) 内,找到绝对值最大的元素所在行 \(i_k\),即\[|a_{i_k,k}| = \max_{k\leq i\leq n} |a_{i,k}| \](2) 奇异性判断:若 \(|a_{i_k,k}|=0\),则矩阵 \(A\) 奇异,方程组无唯一解,停止计算,置 \(\det=0\)。
(3) 行交换:若 \(i_k \neq k\),交换第 \(k\) 行与第 \(i_k\) 行的所有元素(包括 \(A\) 的第 \(k/i_k\) 行、\(b\) 的第 \(k/i_k\) 个元素),同时置 \(\det \leftarrow -\det\)(交换两行,行列式变号)。
(4) 消元计算:对第 \(i\) 行(\(i=k+1,k+2,\dots,n\))
① 计算消元乘数 \(m_{ik} = a_{ik}/a_{kk}\),将 \(m_{ik}\) 存储在 \(a_{ik}\) 的位置(原地覆盖,节省内存);
② 对第 \(j\) 列(\(j=k+1,k+2,\dots,n\)),更新 \(a_{ij} \leftarrow a_{ij} - m_{ik} \cdot a_{kj}\);
③ 更新右端项 \(b_i \leftarrow b_i - m_{ik} \cdot b_k\)。
(5) 行列式更新:\(\det \leftarrow a_{kk} \cdot \det\) - 最终奇异性判断:若 \(a_{nn}=0\),则矩阵 \(A\) 奇异,停止计算,置 \(\det=0\)。
- 回代过程
(1) 计算最后一个变量:\(x_n = b_n / a_{nn}\);
(2) 反向求解剩余变量(\(i=n-1,n-2,\dots,1\)):\[x_i = \frac{1}{a_{ii}} \left( b_i - \sum_{j=i+1}^n a_{ij} \cdot x_j \right) \] - 最终行列式更新:\(\det \leftarrow a_{nn} \cdot \det\)
- 输出解 \(x\) 与行列式 \(\det\)。
四、列主元消去法的矩阵理论:带置换的LU分解(PA=LU)
列主元消去法的每一步操作都可以用矩阵乘法表示,最终可推导出其本质是对矩阵A做带行置换的LU分解,这是理解列主元消去法的核心理论基础。
4.1 基础矩阵工具
- 置换矩阵(初等交换矩阵):交换单位矩阵第 \(k\) 行与第 \(i\) 行得到的矩阵,记为 \(I_{k,i}\)。其核心性质:
- \(I_{k,i}\) 是正交矩阵,逆等于自身:\(I_{k,i}^{-1}=I_{k,i}\);
- 左乘 \(I_{k,i}\) 等价于交换矩阵的第 \(k\) 行与第 \(i\) 行;
- 多个置换矩阵的乘积仍为置换矩阵。
- 消元矩阵:第 \(k\) 步消元对应的初等倍加矩阵 \(L_k\),是单位下三角矩阵,逆矩阵仅需将非对角元取反。
4.2 完整矩阵推导
列主元消去的每一步流程为:选主元→行交换→消元,对应的矩阵操作如下:
- 第1步:先左乘置换矩阵 \(I_{1,i_1}\) 交换行,再左乘消元矩阵 \(L_1\),得到 \(L_1 I_{1,i_1} A = A^{(2)}\)
- 第2步:左乘置换矩阵 \(I_{2,i_2}\) 交换行,再左乘消元矩阵 \(L_2\),得到 \(L_2 I_{2,i_2} A^{(2)} = A^{(3)}\)
- ...
- 第 \(n-1\) 步:\(L_{n-1} I_{n-1,i_{n-1}} A^{(n-1)} = A^{(n)} = U\)(上三角矩阵)
将所有步骤串联,得到完整变换链:
通过置换矩阵与消元矩阵的交换性质(置换矩阵对消元矩阵做相似变换后仍为单位下三角矩阵),可将所有置换矩阵移到等式左侧,整理为:
其中:
- \(P = I_{n-1,i_{n-1}} \dots I_{2,i_2} I_{1,i_1}\),是所有行交换对应的置换矩阵的乘积,仍为置换矩阵;
- \(\tilde{L}_k\) 是单位下三角矩阵,其乘积的逆 \(L = (\tilde{L}_{n-1} \dots \tilde{L}_1)^{-1}\) 也是单位下三角矩阵,且元素绝对值≤1。
最终得到列主元消去法的核心矩阵分解公式:
其中:
- \(P\):置换矩阵,记录所有行交换操作;
- \(L\):单位下三角矩阵,元素为消元乘数,且 \(|L_{ij}|\leq1\);
- \(U\):上三角矩阵,为消元后的结果。
五、核心定理的完整证明
定理5.8(列主元消去法的三角分解定理)
若 \(A\) 为 \(n\) 阶非奇异矩阵,则存在 \(n\) 阶置换矩阵 \(P\)、\(n\) 阶单位下三角矩阵 \(L\)、\(n\) 阶上三角矩阵 \(U\),使得 \(PA=LU\)。
证明(数学归纳法)
-
基例(n=1)
当 \(n=1\) 时,\(A=(a_{11})\),因 \(A\) 非奇异,故 \(a_{11}\neq0\)。取 \(P=I_1\)(1阶单位矩阵)、\(L=I_1\)、\(U=A\),显然 \(PA=LU\) 成立。 -
归纳假设
假设对于任意 \(n-1\) 阶非奇异矩阵,定理成立,即存在 \(n-1\) 阶置换矩阵 \(P'\)、单位下三角矩阵 \(L'\)、上三角矩阵 \(U'\),使得 \(P'A'=L'U'\)。 -
归纳步骤(n阶矩阵)
对于 \(n\) 阶非奇异矩阵 \(A\):- 因 \(A\) 非奇异,其第1列元素不全为0,故可在第1列中找到绝对值最大的非零元素 \(a_{i_1,1}\)。记交换第1行与 \(i_1\) 行的置换矩阵为 \(I_1\),则 \(I_1 A\) 的 \((1,1)\) 位置元素为 \(\alpha=a_{i_1,1}\neq0\)。
- 将 \(I_1 A\) 分块为:\[I_1 A = \begin{pmatrix} \alpha & w^T \\ v & A' \end{pmatrix} \]其中 \(w\) 为 \(n-1\) 维行向量,\(v\) 为 \(n-1\) 维列向量,\(A'\) 为 \(n-1\) 阶方阵。
- 构造消元矩阵 \(L_1 = \begin{pmatrix} 1 & 0^T \\ -v/\alpha & I_{n-1} \end{pmatrix}\),显然 \(L_1\) 是单位下三角矩阵,且因 \(\alpha\) 是第1列绝对值最大的元素,故 \(|v_i/\alpha|\leq1\)。
- 左乘 \(L_1\) 完成消元:\[L_1 I_1 A = \begin{pmatrix} \alpha & w^T \\ 0 & A' - \frac{v w^T}{\alpha} \end{pmatrix} = \begin{pmatrix} \alpha & w^T \\ 0 & A_2 \end{pmatrix} \]其中 \(A_2 = A' - \frac{v w^T}{\alpha}\) 为 \(n-1\) 阶方阵。
- 因 \(A\) 非奇异,故 \(\det(L_1 I_1 A) = \alpha \cdot \det(A_2) \neq 0\),因此 \(\det(A_2)\neq0\),即 \(A_2\) 是 \(n-1\) 阶非奇异矩阵。
- 根据归纳假设,对 \(A_2\) 存在置换矩阵 \(P'\)、单位下三角矩阵 \(L'\)、上三角矩阵 \(U'\),使得 \(P'A_2 = L'U'\)。
- 构造 \(n\) 阶置换矩阵 \(P_2 = \begin{pmatrix} 1 & 0^T \\ 0 & P' \end{pmatrix}\),左乘上式得:\[P_2 L_1 I_1 A = \begin{pmatrix} \alpha & w^T \\ 0 & P'A_2 \end{pmatrix} = \begin{pmatrix} \alpha & w^T \\ 0 & L'U' \end{pmatrix} \]
- 构造单位下三角矩阵 \(\tilde{L} = \begin{pmatrix} 1 & 0^T \\ 0 & L' \end{pmatrix}\),上三角矩阵 \(U = \begin{pmatrix} \alpha & w^T \\ 0 & U' \end{pmatrix}\),则:\[P_2 L_1 I_1 A = \tilde{L} U \]
- 利用置换矩阵的性质,将置换矩阵合并为 \(P = P_2 I_1\)(仍为置换矩阵),单位下三角矩阵合并为 \(L\)(仍为单位下三角矩阵),最终得到:\[PA = LU \]
归纳步骤成立。
由数学归纳法,对任意 \(n\) 阶非奇异矩阵,定理成立。
六、列主元消去法的核心特性与对比
- 计算量:与顺序高斯消去法一致,总乘除法次数约为 \(\frac{n^3}{3}\),选主元仅增加 \(O(n^2)\) 的比较操作,对大规模矩阵可忽略不计。
- 数值稳定性:通过保证 \(|m_{ik}|\leq1\),从根源上抑制了舍入误差的放大,是数值稳定的算法。
- 存储优化:可将 \(L\) 的元素存储在 \(A\) 的下三角区域,\(U\) 的元素存储在 \(A\) 的上三角区域,无需额外的矩阵存储空间,工程实现高效。
- 与其他方法的对比
| 方法 | 核心操作 | 数值稳定性 | 计算量 | 工程实用性 |
|---|---|---|---|---|
| 顺序高斯消去法 | 按顺序消元,无主元选择 | 差,易放大误差 | \(O(n^3)\) | 几乎不单独使用 |
| 列主元消去法 | 列内选最大元,仅行交换 | 优秀,乘数绝对值≤1 | \(O(n^3)\),额外少量比较 | 最常用,工业标准 |
| 全主元消去法 | 子矩阵内选最大元,行+列交换 | 最优 | \(O(n^3)\),额外大量比较+列索引记录 | 仅用于极高精度要求场景 |
七、知识点归纳总结表
| 分类 | 核心内容 | 关键公式/结论 |
|---|---|---|
| 核心定位 | 顺序高斯消去法的稳定改进版本,工程中求解线性方程组的首选直接法 | 适用前提:\(A\) 为非奇异矩阵 |
| 核心思想 | 每步消元前在当前列选绝对值最大的元素作为主元,行交换后再消元 | 核心目标:保证消元乘数 $ |
| 两大核心过程 | 1. 选主元+行交换+消元(化为上三角方程组) 2. 自下而上回代求解 |
消元公式:\(a_{ij} \leftarrow a_{ij} - \frac{a_{ik}}{a_{kk}}a_{kj}\) 回代公式:\(x_i = \frac{1}{a_{ii}} \left( b_i - \sum_{j=i+1}^n a_{ij}x_j \right)\) |
| 矩阵理论本质 | 带行置换的LU分解 | \(PA=LU\),其中\(P\)为置换矩阵,\(L\)为单位下三角矩阵,\(U\)为上三角矩阵 |
| 核心定理 | 列主元三角分解定理 | 若\(A\)非奇异,则必存在置换矩阵\(P\),使得\(PA=LU\),且\(L\)的元素绝对值≤1 |
| 核心优势 | 1. 解决了顺序高斯消去的消元中断问题 2. 数值稳定,抑制舍入误差放大 3. 计算量与顺序高斯一致,工程实现高效 |
总计算量约为 \(\frac{n^3}{3}\),时间复杂度\(O(n^3)\) |
| 工程实现要点 | 1. 原地存储:L元素覆盖A的下三角区域 2. 用数组记录行交换,无需显式构造置换矩阵P 3. 每步选主元后需判断矩阵奇异性 |
可同步计算矩阵行列式:\(\det(A) = \det(P) \cdot \det(L) \cdot \det(U)\) |
posted on 2026-03-01 01:21 Indian_Mysore 阅读(0) 评论(0) 收藏 举报
浙公网安备 33010602011771号