矩阵、行列式
- 求解线性方程
- 一元一次方程,其解为
- 二元一次方程组
- 一元一次方程,其解为
- 我们需要定义什么是乘法、什么是逆
- 因为右边的系数为竖向排列的,所以我们令解也为竖向排列的。从而,我们们可以得到乘法
- 我们也可以直接求解方程组
- (消元过程)将第一式乘以加到第二式,可以消去,
- (代回过程)我们可以解得,
- (消元过程)将第一式乘以加到第二式,可以消去,
- 从而,我们可以得到逆
- 因为右边的系数为竖向排列的,所以我们令解也为竖向排列的。从而,我们们可以得到乘法
- 、、称为矩阵。因此,矩阵的乘法、逆可以用于求解方程组
- 当时,存在,可逆,方程组有唯一解
- 当时,不存在,不可逆。不过,此时的两行系数只相差常数倍,如果的两行系数相差同样的倍数,那么方程组有多于一个解,否则方程组无解
- 在第一种情形中,独立的方程为2个(非退化);在第二种情形中,独立的方程为1个或0个(退化)。因此,可逆即非退化,不可逆即退化
- 因为决定了是否可逆,以及方程组解的个数,所以它称为决定式(Determinant),也叫做行列式,记为。同时,
- Adjugate更接近于Conjugate(共轭),比如在四元数中,四元数的共轭对应于伴随矩阵
- Adjoint更常见,比如范畴论中的伴随函子
- 由于矩阵的逆满足
Cramer法则、Gauss消元法
- 现在,我们将二元一次方程组推广到元一次方程组,即一般的线性方程。为了方便起见,我们考虑为可逆矩阵
- Cramer法则
- 求解线性方程,等价于求矩阵的逆
- 求矩阵的逆,等价于求行列式、伴随矩阵
- 在一般情形下,伴随矩阵的系数全部为行列式。因此,线性方程的求解可以完全化归为行列式的计算,比如
- Gauss消元法
- (消元过程)交换两行,使得第一行第一列不为零。将第一行乘以常数倍加到其他行,可以消去第一列的元。从第二行开始继续消元,直到倒数第一行只剩一个元
- (代回过程)解得倒数第一行的元,将其代回到其他行。从倒数第二行开始继续求解,直到解得全部元
- Cramer法则
- 由Cramer法则、Gauss消元法,可得一般情形下的行列式、伴随矩阵
- (Cramer法则)对于三元一次方程组,如果令第二、三行的系数为0,那么、的方程组化归为二元一次方程组,比如
- (Gauss消元法)考虑如下三种运算,它们对应于三种初等矩阵。注意,它们对应于行列式的反对称性、线性
- (反对称性)交换两行,比如
- (线性,系数)某一行乘以常数倍,比如
- (线性,加法)某一行加到另一行,比如
- 对于初等矩阵,我们有
- 当可逆时,由于三种运算求解线性方程,等价于三种初等矩阵生成,故等式成立
- 当不可逆时,也不可逆,相应的行列式为0,故等式成立
- (反对称性)交换两行,比如
- 高阶行列式可以展开为低阶行列式,并且行列式具有反对称性,故阶行列式为
- 为第列对换到第1列()后展开的系数,所以需要乘以。为去掉第1行、第列后的行列式
- 一般地,可以表示为,也可以表示为
- 高阶行列式每展开一次就下降一阶,并且行、列下标、被去掉。如果将其完全展开为,那么行、列下标不能重复
- 当行下标固定为1~n时,列下标为1~n的置换,再加上反对称性,故阶行列式为
- 我们既可以固定行下标,也可以固定列下标,所以行列式关于行、列是对称的。取的第行等于的第列,它称为的转置,满足
- 当行下标固定为1~n时,列下标为1~n的置换,再加上反对称性,故阶行列式为
- (Cramer法则)对于三元一次方程组,如果令第二、三行的系数为0,那么、的方程组化归为二元一次方程组,比如
- 上面,我们可以由行列式的性质,得到行列式的表达式。反过来,我们也可以由行列式的表达式,以及de Rham上同调群的定义中的外代数,直接导出行列式的所有性质
线性方程的求解,数值计算
- 尽管线性方程的求解可以完全化归为行列式的计算,并且行列式可以完全展开为,然而的阶为,计算复杂度太高。因此,线性方程的求解通常基于Gauss消元法
- // 消元过程(Gaussian Elimination,GE)
- function
- for
- for
- for
- for
- for
- return
- for
- // 代回过程(Backward Substitution,BS)
- function
- for
- for
- for
- return
- for
- 在数值计算中,我们通常使用浮点数。因此,Gauss消元法的矩阵为浮点数矩阵
- 在一般情形下,浮点数等于0是不会成立的。为了方便起见,我们省略了交换两行的运算
- Gauss消元法的计算复杂度可以用浮点运算次数(Floating-Point Operations,flops)来表示,包括加法、减法、乘法、除法等。比如,消元过程为
- 消元过程完成后,矩阵作为上三角矩阵传入代回过程。如果将消元过程的所有作为下三角矩阵,并且的对角线为1,那么我们可以得到LU分解