收藏 分享(赏)

线性方程组的直接法和迭代法.docx

上传人:weiwoduzun 文档编号:4874755 上传时间:2019-01-18 格式:DOCX 页数:13 大小:269.15KB
下载 相关 举报
线性方程组的直接法和迭代法.docx_第1页
第1页 / 共13页
线性方程组的直接法和迭代法.docx_第2页
第2页 / 共13页
线性方程组的直接法和迭代法.docx_第3页
第3页 / 共13页
线性方程组的直接法和迭代法.docx_第4页
第4页 / 共13页
线性方程组的直接法和迭代法.docx_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、线性方程组的直接法 直接法就是经过有限步算术运算,无需迭代可直接求得方程组精确解的方法。线性方程组迭代法 迭代法就是用某种极限过程去逐步逼近线性方程组精确解的方法该方法具有对计算机的存贮单元需求少,程序设计简单、原始系数矩阵在计算过程中不变等优点,是求解大型稀疏矩阵方程组的重要方法迭代法不是用有限步运算求精确解,而是通过迭代产生近似解逼近精确解如 Jacobi 迭代、Gauss Seidel 迭代、SOR 迭代法等。1. 线性方程组的直接法 直接法就是经过有限步算术运算,无需迭代可直接求得方程组精确解的方法。1.1 Cramer 法则 Cramer 法则用于判断具有 n 个未知数的 n 个线性

2、方程的方程组解的情况。当方程组的系数行列式不等于零时,方程组有解且解唯一。如果方程组无解或者有两个不同的解时,则系数行列式必为零。如果齐次线性方程组的系数行列式不等于零,则没有非零解。如果齐次线性方程组有非零解,则系数行列式必为零。定理 1 如果方程组 中 ,则 有解,且解事唯一Axb0DAxb的,解为 是 D 中第 i 列换成向量 b 所得的行列12,.,nDxi式。Cramer 法则解 n 元方程组有两个前提条件:1、未知数的个数等于方程的个数。2、系数行列式不等于零 例 1 a 取何值时,线性方程组有唯一解。231231xax解: 20(1)1Aaa所以当 时,方程组有唯一解。定理 2

3、当齐次线性方程组 , 时该方程组有唯一的零解。0Ax定理 3 齐次线性方程组 有非零解 。0A1.2 Gauss 消元法 Gauss 消元法是线性代数中的一个算法,可用来为线性方程组求解,求出矩阵的秩,以及求出可逆方阵的逆矩阵。当用于一个矩阵时,高斯消元法会产生出一个“行梯阵式” 。 1.2.1 用 Gauss 消元法为线性方程组求解eg:Gauss 消元法可用来找出下列方程组的解或其解的限制: 123283xyzLz这个算法的原理是:首先,要将 以下的等式中的 消除,然后再将1Lx以下的等式中的 消除。这样可使整个方程组变成一个三角形似的格式。2Ly之后再将已得出的答案一个个地代入已被简化的

4、等式中的未知数中,就可求出其余的答案了。在刚才的例子中,我们将 和 相加,就可以将 中的 消除了。132L22Lx然后再将 和 相加,就可以将 中的 消除。1L33x方程组则变为: 281125xyzyz现在将 和 相加,就可将 中的 消除,方程组变为:4L33Ly2811xyzz这样就完成了整个算法的初步,一个三角形的格式(指:变量的格式而言,上例中的变量各为 3,2,1 个)出现了。第二步,就是由尾至头地将已知的答案代入其他等式中的未知数。第一个答案就是 。然后直接带入,立即就可1z得出第二个答案: 和最后一个答案 。这样,我们利用高斯消元法3y2x解决了这个方程组。2. 线性方程组迭代法

5、 迭代法就是用某种极限过程去逐步逼近线性方程组精确解的方法该方法具有对计算机的存贮单元需求少,程序设计简单、原始系数矩阵在计算过程中不变等优点,是求解大型稀疏矩阵方程组的重要方法迭代法不是用有限步运算求精确解,而是通过迭代产生近似解逼近精确解如 Jacobi 迭代、Gauss Seidel 迭代、SOR 迭代法等。2.1 Jacobi 迭代法 213321,1,2, ,100. 0nnnaLaa 1231,.nnaDa 1231.1,2,2,343,0.0nnnaaU 对于线性方程组 则 ,即将 A 分解为一个严格下AxbLDU三角矩阵、一个对角阵和一个严格上三角矩阵之和,从而可写出 Jaco

6、bi 迭代格式的矩阵表示形式为: ,其迭代矩阵(1)1()(1)(k kxb)称为雅可比迭代矩阵. 1(JDLU将线性方程组 变为一个通解方程组 ,对其进行迭代AxbxBf式改写, 矩阵 B 为迭代矩阵 (1)(),0,12.kkxBf 112112 2212nnnnnaxaxbx Iaxxaxb 由方程组(I)的第 i 个方程解出 ,得到一个同解方程组:1(,2)i 1121311221232212 ()nnnnnnnxaxaxbIxaxaxb 构造相应的迭代公式 (1) ()()()121311(1) ()()()2212322(1) ()()()12 ()kkkknkkkknkkkknn

7、nnnxaxaxbIxaxaxb 取初始向量 ,利用(III)反复迭代可以得到一个向(0)(0)()(0)12,Tn量序列 ,利用此迭代格式求解方程组的解法称为 Jacobi 迭代法。()kx用 Jacobi 迭代求解下列方程组 12324430x输入A=4 3 0;3 3 -1;0 -1 4;b=24;30;-24;x, k, index=Jacobi(A, b, 1e-5, 100)输出:x =-2.999811.9987-3.0001k =100index =0所以解为: =-2.9998, =11.9987, =-3.00011x2x3x2.2 Gauss-Seide 迭代 若 L、

8、U、 D 为上述的 L、 U、 D。则 GaussSeidel 迭代法的矩阵表示为: ,现将 显示化由(1)1(1)()kkkxxb (1)kx得: ,令()()b(1) ()1)kxLUDLb, ,则得: ,此即为1GLgL(1)()kkxGgGaussSeidel 迭代法的矩阵表示形式,G 称为迭代阵。 由 Jacobi 迭代法中,每一次的迭代只用到前一次的迭代值,若每一次迭代充分利用当前最新的迭代值,即在计算第 个分量 时,用最新分量i)1(kix, 代替旧分量 , ,就得)1(kx)1(2kx)1(-kix)(1k)(2k)(1-ki到所谓解方程组的 Gauss-Seidel 迭代法。

9、其迭代格式为(初始向量),Tn()0()0(2)1)0( , (11)()()(ij iijkjkjiii xaxabx)20210( nk,;,或者写为 )(1 )210i21011()()()1( ij ijkjikjiiiiikki xaxabax nkx ,;, (1) ()()()121311(1) ()()()2212322(1)(1)(1) (1)()()2, ,1(1) (1)2kkkknkkkknkkk kkki ii iiii iniikknnnxxaaxbaxaxxaxaxaxba (1)(1) ()kknn IVb 用 Gauss-Seide 迭代求解下列方程组 123

10、24430x输入A=4 3 0;3 3 -1;0 -1 4;b=24;30;-24;x0=0;0;0;v,sN,vChain=gaussSeidel(A,b,x0,0.00001,11)输出:v =0.616911.1962-4.2056sN =11vChain =6.0000 10.0000 -6.0000-1.5000 2.0000 -3.50004.5000 10.3333 -5.5000-1.7500 3.6667 -3.41673.2500 10.6111 -5.0833-1.9583 5.0556 -3.34722.2083 10.8426 -4.7361-2.1319 6.213

11、0 -3.28941.3403 11.0355 -4.4468-2.2766 7.1775 -3.24110.6169 11.1962 -4.20560 0 00 0 00 0 00 0 0所以结果为: = 0.6169, =11.1962, =-4.2056 。1x2x3x2.3 SOR 迭代在很多情况下,Jacobi 和 GaussSeidel 法收敛速度较慢,SOR 法是GaussSeidel 法的一种加速方法,需要施加合适的松弛因子。若 L、 U、 D 为上述的 L、 U、 D 。SOR 迭代公式为 ,(1)()kkwXLf其中, 。1()()w1(),2fLb用SOR迭代求解下列方程

12、组。 123412340.76.0.4.160.88.4.2.060170xxxx取初始点 松弛因子 ,精度要求 。(0),)T1.5610输入A=0.76 -0.01 -0.14 -0.16;-0.01 0.88 -0.03 0.06;-0.14 -0.03 1.01 -0.12;-0.16 0.06 -0.12 0.72;B=0.68 1.18 0.12 0.72;X0=0;0;0;0;W=1.05x,n=SOR(A,b,x0,w)输出x=1.27151.28440.48581.2843n=7 有上述结果得出:经过7次迭代后,该方程组的解为x1=1.2715, x2=1.2844, x3=

13、0.4858, x4=1.28432.4 迭代法收敛引理:设 A 为 n 阶方阵,则 的充要条件为lim0kxA( 为普半径) 。()1()证明:必要性若 likx由矩阵收敛的定义知 有因为 所以0A()A0()A由夹逼定理可得出 ,又因为 所以由lim()kx kk可得出li()0kxA1充分性:若 ,取 ,存在矩阵范数 ,使得1()02A则有: ,()()2Alimkx由算子范数相容性可得:10k kkAA由夹逼定理可得出 。limkx定理 1: 迭代公式 收敛的充分必要条件是迭(1)(),0,12.kkBxf代矩阵 的谱半径 B证明:必要性设存在 n 维向量 ,使得 ,则 满足xlimk

14、xxkxBf由迭代公式得出 (1)()2(2)(0)kkkkxBfBxfxxB所以 (0)limlim0k kx xBx因为 为任意 n 维向量,因此上式成立必须(0) lim0kxB由引理可得出 。()1B充分性:若 ,则 不是 B 的特征值,因而有 ,于是0I对任意的 n 维向量 f,方程组 有唯一解,记为 。即:()IxfxxB且 ,又因为lim0kx(1)()2(2)(0)kkkkBxfBxfxB所以,对任意初始向量 都有(0)x(0)limlikkxxBx即迭代公式 收敛。(1)(),12.kkxBf注解: 代矩阵 的谱半径 这里的 是矩阵 的特征值。a()in()i定理 2: 若迭

15、代矩阵的一种范数 ,则对任意的初始向量 和任意(0)x。迭代格式 均收敛。 f(1)()kkxBf迭代法收敛与否只决定于迭代矩阵的普半径,于初始向量及右端项无关。对于同一方程组,由于不同的迭代法迭代矩阵不同,可能出现有的方法收敛,有的发散的情形。注解:三种常用矩阵范数为: , ,1maxnijijA11maxnijjiA( 是 的最大特征值) 。 21ATA由上述两个定理可得:Jacobi 迭代收敛的充分必要条件是 ,收敛的充()1B分条件是任一种范数 ,GaussSeidel 迭代收敛的充分必要条件是1B,收敛的充分条件是任一种范数 。 ()1B 1B定理 3: 对角占优线性方程组 的 Ja

16、cobi 迭代格式Axb和 GaussSeidel 迭代格式均 收敛。(1)()kkxBf (1)()kkxGg注解:n 阶方阵 A,如果其主对角线元素的绝对值大于同行其他元素绝对值之和,则称 A 是对角占优的虽然定理 1 是充分必要条件,可是需要计算迭代矩阵 的特征值,我们在B线性代数上看到一个大型矩阵的特征值是非常难求的,计算量是很大的。定理2 和定理 3 的计算量相对定理 1 来说是相当小的,因为它们只是简单的加减乘除;但是他们是充分条件,不满足时需要再改用定理 1 来判断。所以收敛的判断可先采用定理 2 和定理 3,不行再选择定理 1。预处理是用来加速迭代法收敛的一个重要手段。值得注意

17、的是,经典的求解线性方程组的迭代法也都能够看作是求解采用不同的因子预处理之后得到的线性方程组的迭代法。换句话来说,原线性方程组的松弛迭代法等价于预处理之后的方程组的定点迭代法。谱条件数是反映预处理因子性态是否良好的一个有效指标。在估计特征值和条件数的界的研究领域,虽然已经有了很多的研究成果,但是支持理论还是一个全新的概念。支撑理论是一个用于分析预处理方程组的最大(或最小) 特征值和条件数的代数架构,它最初产生于对称正定的线性方程组 (7)2.5 迭代法收敛的应用用 Jacobi 迭代,GaussSeidel 迭代 两种方法求解下列方程组是否收敛。1231231xx解:因为迭代法收敛与否只决定于迭代矩阵的普半径。所以求普半径是否小于1.12,A10D,012L021UJacobi 迭代矩阵 1()BDL102()BLU其特征方程3210IB所以 ,所以 所以 Jacobi 迭代法收敛。1230()1BGaussSeidel 迭代矩阵 DL102()3BDL其特征方程2203()0IB所以特征值为 所以 所以 GaussSeidel 迭123,()1B代法发散。上述例子说明对于同一方程组,由于不同的迭代法迭代矩阵不同,可能出现有的方法收敛,有的发散的情形。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 理学

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报