线性方程组的平方根解法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在求解线性方程组时,直接解法有顺序高斯消元法、列主元高斯消元法、全主元高斯消元法、高斯约当消元法、消元形式的追赶法、LU分解法、矩阵形式的追赶法,当我们遇到对称正定线性方程组时,我们就要用到平方根法(对称LLT 分解法)来求解,为了熟悉和熟练运用平方根法求解线性方程组,下面对运用平方根法求解线性方程组进行解析。

一、运用平方根法求解线性方程组涉及到的定理及定义

我们在运用平方根法求解线性方程组时,要判定线性方程组Ax=b的系数矩阵A是否是对称正定矩阵,那么我们就要了解正定矩阵的性质和如下定理及定义:

1、由线性代数知,正定矩阵具有如下性质:

1) 正定矩阵A是非奇异的

2) 正定矩阵A的任一主子矩阵也必为正定矩阵

3) 正定矩阵A的主对角元素均为正数

4) 正定矩阵 A的特征值均大于零

5) 正定矩阵A的行列式必为正数

定义一线性方程组Ax=b的系数矩阵A是对称正定矩阵,那么Ax=b是对称正定线性方程组。

定义二如果方阵A满足A=AT,那么A是对称阵。

2.1.4 平方根法和改进的平方根法

如果A是n阶对称矩阵,由定理2还可得如下分解定理:

定理2 若A为n阶对称矩阵,且A的各阶顺序主子式都不为零,则A可惟一分解为:A=LDLT,其中L为单位下三角阵,D为对角阵。

证明因为A的各阶顺序主子式都不为零,所以A可惟一分解为:A=LU

因为,所以可将 U分解为:

其中 D为对角矩阵,U1为单位上三角阵.于是:A=LDU1=L(DU1)

因为A为对称矩阵,所以,A=AT=U1TDTLT=U1T(DLT),由 A的 LU分解的惟一性即得:L=U1T,即U1=LT,故A=LDLT。

工程技术中的许多实际问题所归结出的线性方程组,其系数矩阵常有对称正定性,对于具有此类特殊性质的系数矩阵,利用矩阵的三角分解法求解是一种较好的有效方法,这就是对称正定矩阵方程组的平方根法及改进的平方根法,这种方法目前在计算机上已被广泛应用。

定理3 对称矩阵A为正定的充分必要条件是A的各阶顺序主子式大于零。

2 对称正定矩阵的三角分解

定理 (Cholesky分解)设A为n阶对称正定矩阵,则存在惟一的主对角线元素都是正数的下三角阵L,使得:A=LLT。

分解式A=LLT称为正定矩阵的Cholesky分解,利用Cholesky分解来求解系数矩阵为对称正定矩阵的方程组AX=b的方法称为平方根法。

设A为4阶对称正定矩阵,则由定理 4知,A=LLT,即:

将右端矩阵相乘,并令两端矩阵的元素相等,于是不难算得矩阵L的元素的计算公式为:

平方根法的计算框图见图。

用平方根法求解系数矩阵对称正定的线性方程组时,计算过程是数值稳定的。

为了避免开方运算,有时直接使用对称矩阵A 的T LDL 分解来计算,在中令

)(i j l u i j j i >=,根据矩阵乘法可以求出L和D的元素,然后将方程组即b

x LDL T =转化为两个三角形方程组b Ly =,y D x L 1T -=,由前一方程解出y ,代入后一方程便可解出x 。

二、平方根法求解对称正定线性方程组的过程

用平方根法求解对称正定方线性程组Ax=b 的步骤如下: 例 用平方根法求解方程组

⎥⎥⎥⎦

⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡7851102021211321x x x 解 设

⎥⎥⎥⎦

⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡3332223121113332312221110000001102021211l l l l l l l l l l l l 右端矩阵相乘并比较等式两端。由第一列有

311121112

112,1,1l l l l l ===

可得 2,1,1312111===l l l

比较第二列有 22322131222221

0,2l l l l l l +=+= 求得 1)2(21221

22=-=l l ,2)0(22213132-=-=l l l 由第三列得233

232

2

31

11l

l l ++=,故3)11(21232

231

33=--=l l l

⎥⎥⎥⎦

⎢⎢⎢⎣⎡-=32201

1001L 由b Ly = 解得3,3,5321===y y y ,由y x L T =解得1,5,2321==-=x x x 。

一般情形,设

⎥⎥⎥⎥⎦

⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢

⎢⎢⎢⎣⎡==nn n n nn n n l l l l l l l l l l l l M O ΛΛΛO M 222121112122

2111T

LL A 根据矩阵乘法有

n k l l l a kk k s ks k

s ks k k ,,2,1,2

1

1

21

2Λ=+==∑∑-==

及 ∑∑=-=>+==k

s k k k i k s s k s i s k s i k i k i l l l l l l a 1

11

,

于是有

⎪⎪⎩

⎪⎪⎨⎧++=-⇐-⇐∑∑-=-=n k k i l l l a l l a l kk k s ks is ik ik k s ks kk kk ,,2,1,)()(1

12

111

2Λ 在上式中取k =1,2,…,n 便可求出L 的全部元素。

三、平方根法的算法的流程图

相关文档
最新文档