如果矩阵的非零元素分布在对角线元素两侧,例如,对角线下侧有m1条次对角线为非零元素,对角线上侧有m2条次对角为非零元素,矩阵的其他次对角线上元素均为零元素,这样的矩阵,称为带宽为m1+m2+1的带状矩阵。连续性问题离散化后得到的线性方程组,其系数矩阵往往是带状矩阵。
若带状矩阵的各阶主子式不为零,带宽为m1+m2+1的矩阵A,可分解成带宽为m1+1的下三角阵L和带宽为m2+1的上三角阵U的乘积。
当m1=m2=1时,该带状矩阵称为三对角矩阵。三对角矩阵是最简单,然而又是常遇的带状矩阵。例如,在建立三次样条插值函数以及求解微分方程数值解等问题中,都会遇到求解这样的线性方程组Ax=d,其中系数矩阵A是一个阶数较高的三对角方阵:
地球物理数据处理基础
简记为A=[ai,bi,ci]n1(i=1,2,…,n),这里n指n阶方阵,1指半带宽(简称带宽)。右端项d=(d1,d2…,dn)T。此时方程组Ax=d称为三对角方程组,通过对三对角矩阵的直接分解来求解的方法称为追赶法。
假设系数矩阵A=[ai,bi,ci]n1存在克洛脱(Crout)分解A=LU。由于矩阵A是带宽为1的三对角矩阵,所以L,U均为二对角阵,即
地球物理数据处理基础
利用矩阵乘法,比较A=LU两端对应的元素,便可得如下确定矩阵L与U元素mi,li,ui的计算公式:
地球物理数据处理基础
对三对角方程组的系数矩阵A进行分解以后,求解Ax=d的问题就转化为求解两个特殊的二对角方程组:
地球物理数据处理基础
容易得到递推的计算式分别为
地球物理数据处理基础
人们常把下标由小到大求解 的过程形象化地称为“追”的过程,而将下标由大到小求解 的过程称为“赶”的过程。因此,上述方法通常称为追赶法。
从上面的讨论,我们看到追赶法的实质就是克洛脱分解法在求解三对角方程组中的应用。这时,由于矩阵A的特殊性,在求解运算时将系数矩阵中大量零元素撇开,仅在三条对角线上进行,从而简化计算公式。
三对角线方程组的系数矩阵A=[ai,bi,ci]n1应满足什么条件才能进行克洛脱分解?下面给出一个充分条件:
在三对角矩阵A=[ai,bi,ci]n1中,若
(1)ai≠0(i=2,3,…n)且ci≠0(i=1,2,…,n-1),
(2)按行对角占优,即
则Α非奇异且存在唯一的Α=LU分解。
从上面的计算公式得知,用追赶法求解三对角方程组的计算量小,仅需5n-4次乘除法运算,且计算稳定、存储量小。
[例]用追赶法求解三对角方程组
解:(1)先分解A=LU,求L和U的元素,
m2=a2=-1,m3=a3=-2,m4=a4=-3,l1=b1=2
l2=b2-m2u1=5/2,l3=b3-m3u2=12/5,l4=b4-m4u3=5/4
u1=c1/l1=-1/2,u2=c2/l2=-4/5,u3=c3/l3=-5/4
(2)求解Ly=d,即追的过程,
地球物理数据处理基础
(3)求解Ux=y,即赶的过程,
x4=y4=2,x3=y3-u3x4=3,x2=y2-u2x3=4,x1=y1-u1x2=5
所以方程组的解为x=(5,4,3,2)T。
本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。