欢迎光临散文网 会员登陆 & 注册

《数值分析与实验》——三角分解法(Doolitile、Crout)的一种理解思路

2023-02-16 23:11 作者:唐bili9527  | 我要投稿

这段笔记对不理解三角分解法复杂公式计算过程的同学会有一定帮助,根据需要往下看。

前言

    《数值分析与实验》(黎健玲等 著)这本书的第二章节,将讲述的内容是解线性方程组的直接法(对应的是迭代法,在本书的其他章节有讲解)。本章节,按顺序讲述了Gauss消去法、列主元Gauss消去法、矩阵三角分解法,其中矩阵三角分解法又细分为Doolittle分解法和Crout分解法。笔者的作业主要有列主元的Doolittle分解法和Crout三角分解的追赶法,所以围绕作业题面对的问题,展开思考和理解。欢迎各位同学针对这一主题进行讨论。


基础要求

        理解Gauss列主元消去法的逻辑;

        掌握Gauss列主元消去法;

        了解三角分解法的基本概念;(所以不在此展开)


三角分解法解线性方程组的总过程

以Doolittle分解法为例

        Doolittle分解法需要将A矩阵分解为L(单位下三角矩阵)和U(上三角矩阵)。

Doolittle分解法将A分解为L和U两个三角矩阵

    但是书本介绍的分解方法和计算过程比较复杂,详细过程可以看下图。个人认为,前面一两个步骤还是比较好理解的,到了第K步就显得很抽象。另外,从下图可以看到U和L是逐行递进计算,这样的计算步骤不好理解(个人认为)。既然话都说到这里了,肯定是有另一种更好理解的思路。

直接求出U上三角矩阵,你会发现新世界!

    这部分内容直接上实例。下图给出一道三角分解法的例题,计算过程是按照书本的计算步骤得来的。

三角分解法的一般结题步骤

给出了标准答案和结题步骤,那就开始另一种理解题目的思路了。

第一步,先把线性方程组的系数矩阵提取出来(如下图所示)。

提取系数矩阵A

第二步,使用高斯消去法(就是初等行变换),把A矩阵转化为上三角矩阵,结果就是Doolittle三角分解法的U上三角矩阵。下图是计算过程,结果可以翻上去对照标准答案(结果一致。如果不知道为什么一致,评论区告诉你答案)

系数矩阵A的变换经过

第三步,怎么得到L矩阵呢?答案就在上图中的r2-2r1、r3-3r1、r3-8/5r2。r2-2r1表示L21=2,r3-3r1表示L31=3,r3-8/5r2表示L32=8/5,总结起来就是ri-nrj表示Lij的元素为n。

L单位下三角矩阵元素的由来

综合以上三个步骤就可以得到Doolittle分解法分解系数矩阵A对应L、U三角矩阵。有特殊例子把上面的思路驳倒吗?理论上只要能用书里的解法,笔者的思路就不会被驳倒,其实就是一个方法的两种理解思路。

关于解题步骤,考试可能会要求使用标准的公式和步骤写出解析过程,怎么根据这个方法又能快速结题,又能完整写出结题步骤呢?以下内容结合标准解题过程,分析解题步骤。其实就是根据一般的计算过程反推计算过程使用到哪些元素,有些元素可以使用以计算出来的U或L的元素代替,整个过程其实是和书本上对应的。

图中的LU合并在一个矩阵里表示,原来的意图是节省计算机存储空间
写出A的变换过程,方便书写解题步骤
给出第二行第二列的元素计算示例
给出最后一个元素的计算示例,并得到L、U

以上是使用Doolittle的三角分解法计算出A的LU三角矩阵,如何通过三角矩阵计算线性方程组的解这里不做陈述。有的同学会问如果是列主元的Doolittle三角分解法应该如何得到LU三角矩阵。以下通过理解直接展示,本质上就是多了比较大小选取主元的步骤。

以上讲述了按列主元的Doolittle分解法解线性方程组过程中求LU三角矩阵的内容。

Crout分解法和追赶法

Crout分解法到此还没有展开讲解,因为本质上两者区别不大。如果说Doolittle是用下面的行减去上面的行得到上三角矩阵U,那么Crout就是用右边的列减去左边的列得到下三角矩阵L。

下面举个例子把Crout和追赶法都示例一遍,如果上面的内容get到了点,下面的内容也跟喝水一样。

关于Crout分解法和追赶法的例子

小结

    题目要求使用三角分解法求解线性方程组的解,可以通过初等行变化得到Doolittle分解的上三角矩阵U,单位下三角矩阵L通过行变化之间的系数可以得出;可以通过列变换得到Crout分解的下三角矩阵L,单位上三角矩阵U通过变化系数可以得出。

    列主元要注意元素的变换,否则结果会出现错误。

    笔者认为,该理解思路比书上的内容更好理解,以由浅入深,由宏观到细致的思路更容易被接受。以上整理的内容比较粗糙,欢迎各位同学提出整改意见和知识看点。Thanks~

《数值分析与实验》——三角分解法(Doolitile、Crout)的一种理解思路的评论 (共 条)

分享到微博请遵守国家法律