0. 问题描述
这一章节考察的就是如何求解线性方程组:
{ a 11 x 1 + a 12 x 2 + . . . + a 1 n x n = b 1 a 21 x 1 + a 22 x 2 + . . . + a 2 n x n = b 2 . . . a n 1 x 1 + a n 2 x 2 + . . . + a n n x n = b n \left\{ \begin{aligned} a_{11}x_1 + a_{12}x_2 + ... + a_{1n}x_n &= b_1 \\ a_{21}x_1 + a_{22}x_2 + ... + a_{2n}x_n &= b_2 \\ ... \\ a_{n1}x_1 + a_{n2}x_2 + ... + a_{nn}x_n &= b_n \end{aligned} \right. ⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧a11x1+a12x2+...+a1nxna21x1+a22x2+...+a2nxn...an1x1+an2x2+...+annxn=b1=b2=bn
或者可以用矩阵来表达:
( a 11 a 12 . . . a 1 n a 21 a 22 . . . a 2 n . . . a n 1 a n 2 . . . a n n ) ( x 1 x 2 . . . x n ) = ( b 1 b 2 . . . b n ) \begin{pmatrix} a_{11} & a_{12} & ... & a_{1n} \\ a_{21} & a_{22} & ... & a_{2n} \\ ... \\ a_{n1} & a_{n2} & ... & a_{nn} \end{pmatrix} \begin{pmatrix} x_1 \\ x_2 \\ ... \\ x_n \end{pmatrix} =\begin{pmatrix} b_1 \\ b_2 \\ ... \\ b_n \end{pmatrix} ⎝⎜⎜⎛a11a21...an1a12a22an2.........a1na2nann⎠⎟⎟⎞⎝⎜⎜⎛x1x2...xn⎠⎟⎟⎞=⎝⎜⎜⎛b1b2...bn⎠⎟⎟⎞
1. 消元法
1. 三角方程组
首先,我们来考察一些特殊形式的方程:
1. 对角方程组
对角方程组的函数形式如下:
( a 11 a 22 . . . a n n ) ( x 1 x 2 . . . x n ) = ( b 1 b 2 . . . b n ) \begin{pmatrix} a_{11} & & & \\ & a_{22} & & \\ & & ... & \\ & & & a_{nn} \end{pmatrix} \begin{pmatrix} x_1 \\ x_2 \\ ... \\ x_n \end{pmatrix} =\begin{pmatrix} b_1 \\ b_2 \\ ... \\ b_n \end{pmatrix} ⎝⎜⎜⎛a11a22...ann⎠⎟⎟⎞⎝⎜⎜⎛x1x2...xn⎠⎟⎟⎞=⎝⎜⎜⎛b1b2...bn⎠⎟⎟⎞
显然,可以直接写出 x i = b i / a i i x_i = b_i / a_{ii} xi=bi/aii,其中, i ∈ [ 1 , n ] i \in [1, n] i∈[1,n]。
2. 下三角方程组
下面,我们考察一下一个稍微复杂一点的情况,即下三角矩阵的情况:
( a 11 a 21 a 22 . . . a n 1 a n 2 . . . a n n ) ( x 1 x 2 . . . x n ) = ( b 1 b 2 . . . b n ) \begin{pmatrix} a_{11} & & & \\ a_{21} & a_{22} & & \\ & & ... & \\ a_{n1} & a_{n2} & ... & a_{nn} \end{pmatrix} \begin{pmatrix} x_1 \\ x_2 \\ ... \\ x_n \end{pmatrix} = \begin{pmatrix} b_1 \\ b_2 \\ ... \\ b_n \end{pmatrix} ⎝⎜⎜⎛a11a21an1a22an2......ann⎠⎟⎟⎞⎝⎜⎜⎛x1x2...xn

本文详细介绍了求解线性方程组的各种方法,包括消元法、直接分解法等,并提供了Python伪代码实现。
最低0.47元/天 解锁文章
1580

被折叠的 条评论
为什么被折叠?



