当前课程知识点:数值分析 > 第二章 解线性方程组的直接解法 > 2.2 矩阵的三角分解 > 矩阵的三角分解
这一节我们主要介绍
求解线性方程组的直接三角分解法
我们先来回顾一下高斯消去法
高斯消去法消元的过程
我们用矩阵的形式去表示
比方说
我们把系数矩阵写出来
对于一个三元一次线性方程组
系数矩阵是一个3×3的方阵
做第一次消元的时候
相当于我们把系数矩阵的第二行
加上第一行乘了一个数
对第三个方程
消元第一个未知数的时候
实际上是把第三行
加上第一行去乘了一个数
那么这实际上是在对矩阵做初等行变换
初等行变换就等价于对矩阵左乘上一个初等矩阵
我们可以具体看一下
比方说第一次消元的时候
我们要借助l21还是a11分之a21
l31是a1分之a31
借助这两个数
把a21和a31这两个数给它消成零
又等价于对原来的系数矩阵左乘上l1
这样的一个单位下三角矩阵
在做第二次消元的时候也是一样的
我们借助l32
l32那这时候是更新完矩阵的a22分之a32
做第二次消元的时候
就是在原来更新的矩阵基础上再去左乘上一个初等矩阵L2
最后得到的是上三角矩阵A3
到现在为止
消元过程结束
原来的系数矩阵被化成了一个上三角矩阵
那我们从矩阵运算的角度去看
作用左乘的这些单位下三角矩阵
是个什么样的形式呢
对于刚才简单的例子
相当于我左乘上两个上三角矩阵L1和L2
然后把系数矩阵A化成了A3
利用一下简单的矩阵运算我们就可以得到
A
这是原来的系数矩阵
是等于L1逆 乘上L2逆
再乘上A3
A3就是我们最后化出来的上三角矩阵
那么L1逆 乘上L2逆 是什么样的呢
我们可以简单的
求逆矩阵运算
可以给出L1逆 和L2逆 的形式
把这两个矩阵乘起来
我们看到两个单位下三角矩阵相乘以后
还是一个单位下三角矩阵
在消元过程中实际上我们对A做了一个分解
把A分解成一个单位下三角矩阵
和一个上三角矩阵的乘积
这就是矩阵的三角分解
其中单位下三角矩阵的元素
l21、l31、l32
就是我们消元过程中借助的那些元素
它和原来矩阵里边元素的关系是显而易见的
我们可以给一个简单的例子
给一个这样的三乘三的矩阵
把它做三角分解
通过刚才我们介绍的高斯消去过程中
高斯消去的最终结果
就是把一个矩阵做了三角分解
所以我们就执行高斯消去的消元过程
把整个消元过程完成
A自然就被分解成
一个单位下三角矩阵和一个上三角矩阵的乘积
单位下三角矩阵里边的元素
就是我们借助消元的那些元素
把它按照相应的位置排起来
上三角矩阵就是我们最终把系数矩阵
化成的那个上三角形矩阵
通过简单的例子
我们已经知道三角分解怎么去做
那么这个过程对于一般的矩阵
也是可以进行的
所以我们给出一般矩阵的三角分解的形式
比方说
一个n乘n的方阵
我们可以把它分解成单位下三角矩阵
和一个上三角矩阵的乘积
这里的条件呢
就是主元素要都不等于零
那么这个也很容易理解
因为我们前面介绍三角分解的过程
实际上就是解线性方程组的过程中
高斯消去的过程
高斯消去过程能完成的
条件就是主元要不等于零
所以说矩阵的三角分解能进行的条件
就是主元不等于零
我们可以把这个结论总结成一个定理
设A是n阶方阵
如果A的前n阶顺序主子式均不为零
实际上这个就保证了
消元的过程中主元素都不等于零
那么矩阵a存在唯一的Doolittle的分解
那么这里的Doolittle的分解
指的就是我们刚才说的
LU分解
它的存在性呢
就是由n阶顺序主子式均不为零来保证的
就保证了所有的主元是不等于零的
唯一性大家可以用反证法去证明
把一个矩阵做三角分解还有另外一种方法
我们可以把它简称为元素比较法
元素比较法的基本思想呢
就是我把三角分解
里边的这两个三角矩阵
与元素的一般形式写出来
也就是单位下三角矩阵
我把它表达出来 上三角矩阵
上三角矩阵
我也把它表达出来
然后我利用两个矩阵相乘
和a相等
那么乘积矩阵里面的元素和a矩阵里面的元素对于相等
来把单位下三角矩阵里面的l
和上三角矩阵里面的u求出来
但是这里面需要注意的是
我们在顺序上是有一个规定的
我们怎么来求呢
显然我用l的第一行去乘上u的第一列
得到的就是A的第一列
也就是u的第一行和a的第一行是一样的
接下来呢
我再去求l的第一列
求l的第一列的时候
我就用l的行
去乘u的第一列
这样我就可以利用已经求出来的u11
把l里的第一列里边的元素分别求出来
把u的第一行
和l的第一列求出来以后呢
我接着呢
再用同样的过程去求u的第2行和l的第2列
方法和第一行的运算是一样的
我在求u的第二行的时候
我就用l的第二行分别去乘u的第二列
第三列一直到第n列
这样就可以给出u的第二列上的
第二行上的元素的表达式
用这样的方法
我们可以一直往下求
注意顺序是先求u的行再求l的列
比方说u的前r-1行和l的前r-1列
我已经求出来了
我下面的就去求u的第r行和l的第r列
求u的第r行的时候
我就用l第r行去乘u的j列
当然j是从r开始一直到n的
比方说我要求的是
u的第r行第j列的元素
那么我就用l的第r行去乘u的第j列
得出来的就是arj和urj之间的关系
其它的元素都是我已经求出来的
所以说我们就可以给出
urj的表达式
它跟arj的关系
把u的第r行求出来以后
我们接着呢
去求l的第r列
方法是类似的
我们用l的i行去和u的第r列去相乘
我们就可以给出a ir 和lir 之间的关系
那么在这个关系里边其它的元素都是我们前面已经算出来的
所以很容易就能给出
lir 也就是第i行第r列
l的元素的计算公式
这个主要的思想就是用两个矩阵相乘
和它乘积矩阵的元素对应相等
这个简单的对应关系给出来的
我们可以把上面的过程也就是元素比较方法呢
给它放到一个表格里边去看就更加清楚了
先求u的行
u的第一行
又和a的第一行是一样的
把u的第一行求出来以后呢
去求第一列
l的第一列呢
就是
用原来位置的元素去除以a1、u11
就得到l的第一列
然后呢
再进求u的第二行
u的第二行呢
就是原来这个位置的元素去减下去
跟它所在同一行的l的元素
和所在同一列的u的元素对应位置的乘积
也就比方说去求urr的时候
也就是arr去减下去
l21乘上u12
后边的过程以此类推
比方说在求u的第r行的时候
urr就等于arr去减下去
跟urr所在的同一行的l的元素和跟urr所在的
同一列的u的元素对应元素相乘
以后再相加
就类似于两向量做内积
也就是你用U rr这个元素作为界限
跟它在同一行上呢
l呢
有r-1个元素
跟它在同一列的u
有r-1个元素
那么这两组元素
对应位置
相乘以后再相加就是它们的内积
对大家用内积运算来理解
这个运算就更加简便一些
我们把
在表格里按照这个顺序进行计算的方法
叫做紧凑格式法
实际上紧凑格式方法
就是刚才我们给出来的对应元素方法
只不过是放在表格里面去看
看的的更加清楚直观
下面我们看一个具体的例子
来实现这个紧凑格式方法
比方说求这个3×3的方阵的三角分解
它第一行呢
是223
那么u的第一行就是223
然后我们再求l的第一列
我们先来看l的第二行
第一列这个元素就直接是原来这个位置的4
去除以u11就除以2所以等于2
然后呢
是l的第三行
第一列的这个元素
就用原来这个位置的-2去除以u11就是2
所以是-1
然后
我们来求u的第二行
第二行
我们先去求第二行第二列这个元素
原来这个位置的元素是7
现在这个u的第二行第二列的元素就应该是
7减下去跟它在同一行
l的元素是2
跟它在同一列u的数是2
所以是7-2×2=3
然后再去求第二行第三列的
这个元素
也是原来这个位置的元素是7
这时候7应该减下去,
跟它在同一行的l的元素是2
跟它在同一列的u的元素是3
所以是7-2×3=1
把u的第2行求完以后呢
我们再去求l的第二列
l的第二列呢
实际上就是这个
l32
这个求的时候就是用原来这个位置的数字
4
去减掉跟它在同一行的l的元素-1
乘上跟它在同一列的u的元素2
减完以后差要除以主元的元素
就是上面的这个3
得到的就是l的第二列的这个元素
最后我们再把u的第三行
第三列的这个元素求出来
这个lu分解都完成了
大家从这个表格里面就很容易把l矩阵里面的元素
和u矩阵里边的元素写出来
以对角线为分界线
对角线以下的元素是l矩阵的元素
因为l是单位下三角矩阵
它对角线上的元素都是1
对角线及其以上的第一部分就是对应的是上三角形矩阵
这就是我们给出来的矩阵的三角分解的这个方法
我们总结一下这一部分
矩阵三角分解的方法呢
主要有这么三种
消元的过程
消元过程自动完成矩阵的三角分解
第二种就是元素比较法
实际上就是把两个三角矩阵相乘
把两个三角矩阵的一般形式写出来
它
两个三角矩阵的乘积和原来系数矩阵相等
这样我们通过对应元素相等
可以给出
两个三角矩阵的元素的计算公式
第三个就是
紧凑格式方法
实际上
第二个和第三个是一种方法
只是表达形式不一样
第二个解出来的是公式的表达式
第三个我们是通过一个表格把它清楚的表现出来
元素比较方法和紧凑格式方法本质上是一样的
好
我们今天三角分解法呢
就介绍到这
三角分解法为我们下一次课用三角分解法去解线性方程组呢
先是做一个准备
-1.1 误差的概念
--误差的概念
-1.2 误差的传播
--误差的传播
-第一章 习题
--第一章 习题
-2.1 Gauss消去法
--Gauss消去法
-2.2 矩阵的三角分解
--矩阵的三角分解
-2.3 直接三角分解法
--直接三角分解法
-2.4 平方根法和改进的平方根法
-2.5 误差分析(1)向量和矩阵范数
-2.6 误差分析(2)条件数
-第二章 习题
--第二章 习题
-3.1 Jacobi迭代法和Gauss-Seidel 迭代法
-3.2 迭代法收敛性的判别
-3.3 误差分析
--误差分析
-第三章 习题
--第三章 习题
-4.1 幂法
--幂法
-4.2 反幂法
--反幂法
-第四章 习题
--第四章 习题
-5.1 多项式插值理论
--多项式插值理论
-5.2 Lagrange 插值多项式
-5.3 Newton 插值多项式(1)差商型
-5.4 Newton 插值多项式(2)差分型
-5.5 分段线性插值
--分段线性插值
-5.6 Hermite 插值
-第五章 习题
--第五章 习题
-6.1 数据拟合的最小二乘法(1)多项式拟合
-6.2 数据拟合的最小二乘法(2)其他函数拟合
-6.3 正交多项式
--正交多项式
-6.4 函数的最佳平方逼近
-第六章 习题
--第六章 习题
-7.1 数值微分
--数值微分
-7.2 Newton-Cotes求积公式(1)数值积分的基本思想、Newton-Cotes公式
--Newton-Cotes求积公式(1)数值积分的基本思想、Newton-Cotes公式
-7.3 Newton-Cotes求积公式(2)误差估计
-7.4 复化求积公式
--复化求积公式
-7.5 Romberg求积公式、Gauss型求积公式
-第七章 习题
--第七章 习题
-8.1 Romberg求积公式、Gauss型求积公式
-8.2 简单迭代法的加速、牛顿法与弦截法
-第八章 习题
--第八章 习题
-9.1 常微分方程数值解法概述
-9.2 Euler方法及其改进方法
-第九章 习题
--第九章 习题
