数值线性代数课程设计高斯消去法
数值分析Gauss消去法课件

高斯消元法的代码实现
初始化矩阵
将系数矩阵A进行初始化,并存储在二维数 组中。
消元过程
通过一系列行变换,将系数矩阵变为上三角 矩阵。
主元选择
选择主元,即系数矩阵中所在行和列的最大 元素。
回带求解
利用上三角矩阵的元素,求解线性方程组的 解。
选主元的优化策略
1 2
自然主元
选择系数矩阵中绝对值最大的元素作为主元。
病态问题
对于一些病态问题,高斯 消元法可能无法得到准确 解,需要采用其他方法进 行求解。
01
Gauss消去法的应 用实例
应用领域与案例介绍
线性方程组求解
01
Gauss消去法是求解线性方程组的一种常用方法,适用于大ห้องสมุดไป่ตู้模
、稀疏矩阵的求解。
矩阵求逆
02
通过Gauss消去法可以计算矩阵的逆,这在许多科学计算和工程
最小二乘主元
选择使所在行和列的绝对值之和最小的元素作为 主元。
3
随机主元
随机选择一个元素作为主元,可以避免某些数值 问题。
数值稳定性与误差控制
01
02
03
数值稳定性
高斯消元法在某些情况下 可能产生数值不稳定性, 如主元接近零或数值误差 累积。
误差控制
在消元过程中,可以通过 一些技巧来控制误差,如 预处理、选主元策略和舍 入误差控制。
领域中都有应用。
特征值和特征向量计算
03
Gauss消去法可以用于计算矩阵的特征值和特征向量,这在物理
、工程和经济学等领域有广泛的应用。
实际应用中的问题与挑战
数值稳定性
Gauss消去法在处理病态问题或 接近奇异矩阵时可能会出现数值 不稳定性,导致计算结果误差较 大。
数值方法高斯消元法

数值方法高斯消元法
高斯消元法(Gaussian Elimination)是指通过迭代使用矩阵运算,化为上三
角形矩阵来求解线性方程组的一种特殊数值算法。
它是数值分析中用于求解结构化和非结构化方程组的主要方法之一,属于改进的回代法,是由德国数学家高斯于
19世纪末提出的。
高斯消元法主要用于求解下列形式的方程组:Ax = b,其中A为非奇异矩阵,
x为未知向量,b为系数向量。
由此可见,该方法最重要的两个思想就是消元和迭代。
本算法的消元操作是通过矩阵的标准变换来实现的,即存在一个三角阵T,它
的下三角部分的映射是原矩阵A,其上三角部分本身恒为单位矩阵,这样一来,原
方程就被转化为一组三角方程,而且由上三角的单位矩阵可以再次得出未知向量x。
在实际应用中,高斯消元法最重要的特点就是它的计算精度高,时间效率也非
常高。
这是因为在处理大矩阵时,它不仅能够提高计算精度,而且能有效控制计算时间。
因此,高斯消元法广泛用于各种数值分析领域,如量子力学计算,复杂系统建模,模式识别,统计过程等等。
此外,高斯消元法也被广泛应用于工业领域,如航空航天,汽车制造,电力电子等。
总而言之,高斯消元法无疑是一种非常出色的线性方程组求解算法,有效地合
理地求解了大量复杂的线性数值问题,用它取代传统的回代法有效地节省了计算时间,是当今数值分析中可靠、高效斗算算法。
高斯消除法

高斯消除法高斯消除法是一种解线性方程组的常用方法。
它的基本思想是通过一系列的行变换将线性方程组化为上三角形式,从而求得方程组的解。
本文将详细介绍高斯消除法的原理和步骤,并通过一个具体的例子来演示其应用。
一、高斯消除法的原理高斯消除法的核心思想是利用行变换将线性方程组化为上三角形式。
其基本原理可以概括为以下几点:1. 首先,将线性方程组的系数矩阵进行增广,得到一个增广矩阵。
2. 选择一个主元素,一般选择第一行的第一个非零元素作为主元素。
3. 通过行变换,将主元素所在列的其他元素消为零。
4. 重复上述步骤,选择一个新的主元素,直到将矩阵化为上三角形式。
5. 对上三角矩阵进行回代,得到线性方程组的解。
下面我们通过一个具体的例子来演示高斯消除法的步骤。
假设有如下线性方程组:2x + 3y - z = 10x - y + 2z = -13x + 2y - 3z = 51. 首先,将系数矩阵进行增广,得到增广矩阵:[ 2 3 -1 | 10 ][ 1 -1 2 | -1 ][ 3 2 -3 | 5 ]2. 选择第一行的第一个非零元素2作为主元素。
3. 第一步消元:将第二行乘以2,减去第一行,得到新的第二行:[ 2 3 -1 | 10 ][ 0 -7 4 | 19 ][ 3 2 -3 | 5 ]将第三行乘以3,减去第一行,得到新的第三行:[ 2 3 -1 | 10 ][ 0 -7 4 | 19 ][ 0 -7 0 | -5 ]4. 选择第二行的第二个非零元素-7作为主元素。
5. 第二步消元:将第三行乘以(-1),加上第二行,得到新的第三行:[ 2 3 -1 | 10 ][ 0 -7 4 | 19 ][ 0 0 4 | 14 ]6. 至此,已将矩阵化为上三角形式。
接下来进行回代,求解方程组的解。
由最后一行可知,4z = 14,即z = 14/4 = 3.5。
将z的值代入第二行的方程中,可得-7y + 4z = 19,即-7y + 4*3.5 = 19,解得y = -3。
数值线性代数课程设计高斯消去法

数值线性代数课程设计⾼斯消去法数值线性代数课程设计线性⽅程组的直接解法数理学院 09405011班 0940501120 沈骁摘要:如何利⽤电⼦计算机来快速、有效的求解线性⽅程组的问题是数值线性代数的核⼼问题。
本⽂将主要介绍解线性⽅程组的基本的直接法——⾼斯消去法,平⽅根法,并⽤实例来验证此⽅法的有效性。
关键字:⾼斯消去法,顺序消去法,选主元消去法,平⽅根法,消元过程,回代过程,主元数和乘数引⾔:因为各种各样的科学与⼯程问题往往最终都要归结为⼀个线性⽅程组的求解问题。
本⽂在⽐较着⼏个⽅法的基础上,通过⼀道实例来得到最⽅便最有效的⽅法。
基本原理:⼯程计算和科学研究中的许多问题,最终归结为线性代数⽅程组的求解。
求解的⽅法也有很多,如⾼斯消去法(顺序消去法,选主元消去法),平⽅根法。
⾼斯消去法是⽬前求解中⼩规模线性⽅程组最常⽤的⽅法;平⽅根法是求解对称正定线性⽅程组最常⽤的⽅法之⼀。
为了更快速、更⽅便的求解线性⽅程组,下⾯我们⽐较⼀下这⼏种⽅法哪种更好。
⼀、⾼斯(Causs )消去法就是逐步消去变元的系数,将原⽅程组Ax b =化为系数矩阵为三⾓形的等价⽅程组Ux d =,然后求解系数矩阵为三⾓形的⽅程组⽽得出原⽅程组解的⽅法。
把逐步消元去变元的系数,将⽅程组化为以系数矩阵为三⾓形的等价⽅程组的过程称为⼩院过程;把求系数矩阵为三⾓形的⽅程组解的过程称为回代过程。
最初求解⽅程组的⾼斯消去法也称为顺序消去法,它由消元过程和回代过程组成。
顺序消去法 1.消元过程考虑⼀般⽅程组,为了推导过程⽅便,记系数矩阵A 的元素ij a 为(0)ij a ,右端向量b 的元素i b 记为(0),1i n a +,于是⽅程组11112211211222221122n n n n n n nn n na x a x a xb a x a x a x b a x a x a x b +++=??+++=+++=(1.1)成为()()()()()()()()()()()()00011112211100021122222100011221n n n n n n n n nn n nn a x a x a x a a x a x a x a a x a x a x a +++?+++=?+++=+++=假设(0)110a ≠,将第1个⽅程乘以(0)1(0)11()i a a -加到第i 个⽅程(2)i n ≤≤,得到第1个导出⽅程组(0)(0)(0)(0)111122111(1)(1)(1)222221(1)(1)(1)221n n n n n n n nn n nn a x a x a x a a x a x a a x a x a +++?++=?+=??+=其中:(0)(1)(0)(0)11(0)11i ij ij j a a a a a =-,2i n ≤≤,21j n ≤≤+。
数值分析高斯顺序消去法、列主元消去法LU分解法

数值分析实验报告(1)学院:信息学院班级:计算机0903班姓名:***学号:********课题一A.问题提出给定下列几个不同类型的线性方程组,请用适当的方法求解线性方程组1、设线性方程组⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡--------------------------1368243810041202913726422123417911101610352431205362177586832337616244911315120130123122400105635680000121324⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡10987654321x x x x x x x x x x =⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡-2119381346323125 x *= ( 1, -1, 0, 1, 2, 0, 3, 1, -1, 2 )T2、设对称正定阵系数阵线方程组⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡----------------------19243360021411035204111443343104221812334161206538114140231212200420424⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡87654321x x x x x x x x = ⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡---4515229232060 x * = ( 1, -1, 0, 2, 1, -1, 0, 2 )T3、三对角形线性方程组⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡------------------4100000000141000000001410000000014100000000141000000001410000000014100000000141000000001410000000014⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡10987654321x x x x x x x x x x = ⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡----5541412621357 x *= ( 2, 1, -3, 0, 1, -2, 3, 0, 1, -1 )TB.(1)对上述三个方程组分别用Gauss 顺序消去法与Gauss 列主元消去法;平方根 与改进平方根法;追赶法求解(选择其一) (2)编写算法通用程序(3)在应用Gauss 消去时,尽可能利用相应程序输出系数矩阵的三角分解式C.(1)通过该课题的程序编制,掌握模块化结构程序设计方法 (2)掌握求解各类线性方程组的直接方法,了解各种方法的特点 (3)体会高斯消去法选主元的必要性 实验步骤:(高斯消去法,列主元,LU )1顺序高斯消去法2.LU 分解法3.列主元高斯消去法(如下图)(1)高斯消去法运行结果如下(2)对方程的系数矩阵进行LU分解并求出方程组的解(3)列主元高斯消去法实验体会总结:利用gauss消去法解线性方程组的时候,如果没有经过选主元,可能会出现数值不稳定的现象,使得方程组的解偏离精确解。
第三章-高斯消去法

对于(A (1) , b (1) )中个元素的计算公式为:
( ( (0 a11j) a10) / a11) j (1) ( 0) ( 0 ) (1) a ij a ij a i1 a1 j
( j 2, , n 1) (i 2, , n; j 2, n 1)
2 1 3 1 4 2 5 4 2 0 2 6
第一步:先将方程(1)中未知数 边,得到下列方程组:
x 1的系数2除(1)的两
1 3 1 x1 2 x 2 2 x 3 2 I1 4 x1 2 x 2 5x 3 4 2x 2x 3 6 1
( a 10 ) n
a (0) 22
(0 a 32)
a (0) 2n
( a 30 ) n
a (0) 42
a (0) 4n
( a 10 ) 1 n (0) a 2 n 1 ( a 30 )1 n (0) a 4n 2
(0 第一步:对(A ( 0) , b ( 0))的第一行个元素除以a11) , 然 0 后用第i行元数(i 2, , n )减去第一行对应元素的a i(1 ) (0 倍, 2, , n ), 这样,a11) 位置变为 ,其余各行的第一 (i 1
(1 a12) 1
(1 a13) a ( 2) 23
0 0
( a 11)1 n a ( 2 )1 2n 记为 ( 2) ( 2) a 33 a 3n 1 (A ( 2 ) , b ( 2 )) ( 2) ( 2) a n 3 a nn 1
k 对第k行各元素除以a (kk1) , 第i行的元素减去第k行对应 (k 元素的a ik 1)倍(i k 1, , n ), 这样就将第k行第k个元
数值分析实验报告---高斯消去法 LU分解法

数值分析实验报告---高斯消去法 LU分解法实验一:高斯消去法一、实验目的1. 掌握高斯消去法的原理2. 用高斯消去法解线性方程组3. 分析误差二、实验原理高斯消去法(又称为高斯-约旦消去法)是一种利用矩阵消元的方法,将线性方程组化为改进的阶梯形式,从而解出线性方程组的解的方法。
具体而言,高斯消去法将线性方程组的系数矩阵化为一个上三角矩阵,再利用回带法求解线性方程组的解。
三、实验内容1.1、用高斯消去法解线性方程组在具体实验中,我们将使用高斯消去法来解决下述的线性方程组。
5x+2y+z=102x+6y+2z=14x-y+10z=25为了使用高斯消去法来解这个方程组,首先需要将系数矩阵A进行变换,消除A矩阵中第一列中的下角元素,如下所示:1, 2/5, 1/50, 28/5, 18/50, 0, 49/28接着使用回代法来计算该方程组的解。
回代法的过程是从下往上进行的,具体步骤如下:第三个方程的解:z=49/28;第二个方程的解: y=(14-2z-2x)/6;第一个方程的解: x=(10-2y-z)/5。
1.2、分析误差在使用高斯消去法求解线性方程组时,一般会出现截断误差,导致得到的解与真实解之间存在一些误差。
截断误差的大小和矩阵的维数有关。
为了估计截断误差,我们使用矩阵B来生成误差,在具体实验中,我们将使用下面的矩阵:我们来计算该矩阵的行列式,如果方程组有唯一解,则行列性不为0。
本例中,行列式的值是 -1,因此方程组有唯一解。
然后我们计算真实解和高斯消去法得到的解之间的误差,具体公式如下所示:误差 = 真实解的范数 - 高斯消去法得到的解的范数其中,范数的定义如下:||x||1=max{|xi|}; ||x||2=sqrt{(|x1|^2 + |x2|^2 + ... + |xn|^2)}四、实验步骤1、将高斯消去法的每一个步骤翻译成代码,并保存为一个独立的函数。
2、将代码上传至 Python 交互式环境,并使用高斯消去法来解线性方程组。
高斯消去法解方程组

高斯消去法解方程组
高斯消去法是数值计算中一种解线性方程组的标准算法,由查尔斯·高斯在 18 年发明,是向量空间下线性方程组的计算最有效的算法。
它利用线性变换(例如交换、加减乘除),逐步将线性方程组化简成上三角形形式进而得到解,称为高斯消去法。
其核心思想是:由方程组的关系式可得出系数矩阵,采用层层消去的方法使其变成上三角矩阵,再解出解向量。
高斯消去法的具体步骤是:
(1)以第一列为基元,化为消去向量,即第一列第一项(用a表示)对应的消去系数,然后将其他行的第一项做除法,消去第一列。
(2)以第二列为基元,化为消去向量,消去其余行第二项。
(3)以此类推,以每一列为基元,化为消去向量,将其
余行此列之项全部消去;直至消去完毕。
(4)最后一步是逆序求出解向量。
由最后一个方程式,
可直接求出最后一列解向量(用x表示)特征值,若n表示方程组的阶数,则n=1时即可求得解向量的所有特征值,若n>1,则逆序回代求出前面的特征值。
高斯消去法解线性方程组的算法比较简单,易于理解,
但它会遇到数值误差、文本输入错误等问题,所以在使用高斯消去法时,应当注意它的准确性,以及在使用这种解法时可能出现的数值不稳定性。
此外,高斯消去法的效率较低,其计算
时间与方程组系数的规模呈指数增长关系,因此也可以通过其他算法来求解线性方程组,如 LU 分解等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数值线性代数课程设计 线性方程组的直接解法数理学院 09405011班 0940501120 沈骁 摘要:如何利用电子计算机来快速、有效的求解线性方程组的问题是数值线性代数的核心问题。
本文将主要介绍解线性方程组的基本的直接法——高斯消去法,平方根法,并用实例来验证此方法的有效性。
关键字:高斯消去法,顺序消去法,选主元消去法,平方根法,消元过程,回代过程,主元数和乘数引言:因为各种各样的科学与工程问题往往最终都要归结为一个线性方程组的求解问题。
本文在比较着几个方法的基础上,通过一道实例来得到最方便最有效的方法。
基本原理:工程计算和科学研究中的许多问题,最终归结为线性代数方程组的求解。
求解的方法也有很多,如高斯消去法(顺序消去法,选主元消去法),平方根法。
高斯消去法是目前求解中小规模线性方程组最常用的方法;平方根法是求解对称正定线性方程组最常用的方法之一。
为了更快速、更方便的求解线性方程组,下面我们比较一下这几种方法哪种更好。
一、高斯(Causs )消去法就是逐步消去变元的系数,将原方程组Ax b =化为系数矩阵为三角形的等价方程组Ux d =,然后求解系数矩阵为三角形的方程组而得出原方程组解的方法。
把逐步消元去变元的系数,将方程组化为以系数矩阵为三角形的等价方程组的过程称为小院过程;把求系数矩阵为三角形的方程组解的过程称为回代过程。
最初求解方程组的高斯消去法也称为顺序消去法,它由消元过程和回代过程组成。
顺序消去法 1. 消元过程考虑一般方程组,为了推导过程方便,记系数矩阵A 的元素ij a 为(0)ij a ,右端向量b 的元素i b 记为(0),1i n a +,于是方程组11112211211222221122n n n n n n nn n na x a x a xb a x a x a x b a x a x a x b +++=⎧⎪+++=⎪⎨⎪⎪+++=⎩ (1.1)成为()()()()()()()()()()()()00011112211100021122222100011221n n n n n n n n nn n nn a x a x a x a a x a x a x a a x a x a x a +++⎧+++=⎪+++=⎪⎨⎪⎪+++=⎩假设(0)110a ≠,将第1个方程乘以(0)1(0)11()i a a -加到第i 个方程(2)i n ≤≤,得到第1个导出方程组(0)(0)(0)(0)111122111(1)(1)(1)222221(1)(1)(1)221n n n n n n n nn n nn a x a x a x a a x a x a a x a x a +++⎧++=⎪+=⎪⎨⎪⎪+=⎩其中:(0)(1)(0)(0)11(0)11i ij ij j a a a a a =-,2i n ≤≤,21j n ≤≤+。
由于因子(0)1(0)11i a a 不止一次地用到,常记为,1i l 。
再假设(1)220a ≠,由第1个导出方程组的第2个方程乘以(1)2(1)22()i a a -加到第i 个方程(3)i n ≤≤,得到第2个导出方程组()()()()()()()()()()()()()()()000001111221331111111222233221222333*********n n n n n n n n n n nn n nn a x a x a x a x a a x a x a x a a x a x a a x a x a ++++⎧++++=⎪+++=⎪⎪⎨++=⎪⎪⎪++=⎩类似地记:(1)22(1)22i i a l a =,则第2个导出方程组的元素(1)(2)(0)(1)(1)(1)(1)222(1)22i ij ij j ij i j a a a a a l a a=-=-,3i n ≤≤,31j n ≤≤+。
重复上述过程1n -次,得到1n -个导出方程组()()()()()()()()()()()()()()000001111221331111111222233221222333331111n n n n n n n n n n n nn n nn a x a x a x a x a a x a x a x a a x a x a a x a +++--+⎧++++=⎪+++=⎪⎪⎨++=⎪⎪⎪=⎩(1.2)其中第k 个导出方程组的元素的递推关系是(1)(1)k ik ik k kka l a --=,()(1)(1)k k k ij ij ik kja a l a --=- (1.3)(11,1,11)k n k i n k j n ≤≤-+≤≤+≤≤+。
由于上述消元过程只是将原方程组的系数矩阵和右端进行初等变换,因此,第1n -个导出方程组与原方程组等价,即通过消元过程将方程组(1.1)化成了等价的上三角方程组(1.2)。
由第k 个导出方程组的计算公式(1.3),容易得到消元过程所需要的乘法和加法次数为12111()(1)(1)3n k nS n k n k n -==--+=-∑除法次数为1121(1)()2n k n n S n k -=-=-=∑ 2.回代过程回代过程就是求等价三角形方程组(1.2)的解。
只要(1)0(1,2,,)k kka k n -≠=,就可以最后一个方程得到n x 的值,再从第1n -个方程得1n x -的值。
在一般情形,可求得i x 的回代递推公式(1)1(1)(1)(1)11,(),1,2,,1.n nn n n nnn i i i ij j j i i i ii a x a x a x x i n n a -+---=+-⎧=⎪⎪⎪⎨-⎪⎪==--⎪⎩∑(1.4) 由公式(1.4)可知,回代过程需要n 次除法,其乘法和加法的次数同为112(1)(1)2n n n +++-=-。
所以回代过程需211(1)2S n n =-次加法,221(1)2S n n =+次乘、除法。
3.顺序消去法的运算次数与计算步骤由消元过程和回代过程的运算次数可知,顺序消去法的加法次数为111211(235)6S S S n n n =+=+-,乘除法次数为221112221(31)3S S S S n n =++=+-。
消元过程在编程上机运算时,需采用三重循环,即对于1,2,,1,k n =-1,2,,,i k k n =++计算(1)(1)k ikkk k kka l a --=;对于1,2,,1j k k n =+++计算()(1)(1)k k k ij ij ik kj a a l a --=-。
回代过程只需要二重循环,即计算(1)1(1)n nn n n nna x a -+-=,对于1,2,,1,i n n =--0;s =对于1,2,,,j i i n =++计算(1),i ij j S S a x -=+(1)1(1).i in i i iia S x a -+--=4.主元数和乘数由顺序消去法的推导过程可知,无论是消元过程还是回代过程的都不需要对未知元作真正的运算,而仅需要对方程组Ax b = 的系数矩阵的元素和右端作运算。
因此,在实际运算中,总是将方程组的系数矩阵和右端合在一起,记成增广矩阵(,)A b 。
由消元过程(1.3)可以看到,元素(1)k kk a -为“主元素“,另外,在消元过程中不止一次用到数ik l ,这个数称为消元过程的乘数。
二.平方根法平方根法又叫Cholesky 分解法,是求解对称线性方程组最常用的方法之一。
对于一般方阵,为了消除LU 分解的局限性和误差的过分积累,而采用了选主元的方法。
但对于对称正定矩阵而言,选主元却是完全不必要的。
设n nA R⨯∈是对称正定的,即A 满足TA A =而且Tx Ax >0对一切的非零向量nx R ∈成立.此时,由定理容易推出 Cholesky 分解定理:若n n A R ⨯∈对称正定,则存在一个对角元均为正数的下三角阵n n L R ⨯∈,求得TA LL =.上式中的L称作A 的Cholesky 因子。
若线性方程组的系数矩阵是对称正定的,则我们自然可按如下的步骤求其解:(1)求A 的Cholesky 分解:TA LL =;(2)求解Ly b =得y ;(3)求解T L x y =得x 。
实验:1.用高斯(Causs )消去法求解下面的84阶方程组123828384617861158611586115861158614x x x x x x ⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦。
解:10n = ()A identity n =1i n = ,6i i A = 11i n =- ,11i i A +=2i n = ,18i i A -=17b = 21i n =- 15i b = 14n b =()M lu A =(,1,,1,)(,1,,1,2)(,1,,21,3)P submatrix M n n L submatrix M n n n U submatrix M n n n ==+=⋅+⋅ (,)y lsolve L P b =⋅ (,)x lsolve U y =1472 5.923710A ⎛⎫ ⎪= ⎪ ⎪⎝⎭2()UI Gauss A = 1100()2103 2.3811UI ⎛⎫ ⎪= ⎪ ⎪⎝⎭21470 2.1120017.571UI ⎛⎫ ⎪=-- ⎪ ⎪⎝⎭(,)U Gauss A b = 1470 2.1120017.571U ⎛⎫ ⎪=-- ⎪ ⎪⎝⎭()M GaussLU A = 1L M = 2U M =1002103 2.3811L ⎛⎫ ⎪= ⎪ ⎪⎝⎭ 1470 2.1120017.571U ⎛⎫ ⎪=-- ⎪ ⎪⎝⎭000000000A LU ⎛⎫⎪-= ⎪ ⎪⎝⎭2.用你编写的程序求解对称求解对称正定方程组Ax b =,其中b 随机的选取,系数矩阵为100阶1011101110111011101110⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦。
解: 5n = 1112i ni n i n ==-= ,,1,11011i i i i i i A A A +-=== (1)i b rnd =()L cholesky A =(,)(,)T y lsolve L b x lsolve L y ==改进的平方根方法:3.1620.3160000 3.1460.3180000 3.1460.3180000 3.1460.3180000 3.146TL ⎛⎫ ⎪ ⎪ ⎪= ⎪ ⎪ ⎪⎝⎭1i n = ,,1()T i i i iD L L L D D D D-==⋅=⋅1210000000000000000000000000T M M M A ⎛⎫⎪ ⎪ ⎪-=⎪ ⎪ ⎪⎝⎭结论:通过用两种方法对题目的求解,我们得到高斯消去法适合用于中小规模线性方程的求解,它一般用于系数矩阵稠密而又没有任何特殊结构的线性方程组,由它改进后得到的选主元消去法是目前计算机上常用的有效方法;而对于一般方阵,为了消除LU 分解的局限性和误差的过分积累,而采用了选主元的方法。