线性方程组的解法

合集下载

线性方程组的解法

线性方程组的解法

线性方程组的解法线性方程组是数学中常见的问题,它可以用于描述多个未知数之间的关系。

解决线性方程组的问题是求解未知数的具体取值,从而得到方程组的解。

本文将介绍几种常见的解线性方程组的方法。

一、高斯消元法高斯消元法是解决线性方程组的经典方法之一。

它通过矩阵变换的方式,将线性方程组转化为一个三角矩阵,从而简化求解过程。

以下是高斯消元法的步骤:1. 将线性方程组写成增广矩阵的形式,其中最后一列为常数项。

2. 选取一个非零元素作为主元,在当前列中将主元素所在的行作为第一行,然后通过初等行变换将其他行的主元素变为0。

3. 重复第2步,直到所有的主元素都变成1,并且每个主元素所在的列的其他元素都变为0。

4. 反向代入,从最后一行开始,依次回代求解未知数的值。

二、矩阵的逆矩阵法矩阵的逆矩阵法是利用矩阵的逆矩阵来求解线性方程组。

以下是逆矩阵法的步骤:1. 对于线性方程组Ax=b,如果矩阵A可逆,将方程组两边同时左乘A的逆矩阵AI,得到x=A^(-1)b。

2. 通过求解矩阵A的逆矩阵来得到未知数向量x的值。

3. 如果矩阵A不可逆,那么线性方程组没有唯一解,可能有无穷多解或者无解。

三、克拉默法则克拉默法则是另一种解决线性方程组的方法,它利用行列式的性质来求解未知数的值。

以下是克拉默法则的步骤:1. 对于线性方程组Ax=b,令|A|=D,其中D表示矩阵A的行列式。

2. 分别计算将矩阵A的第i列替换为常数列b所得到的行列式|A_i|。

3. 未知数向量x的第i个分量可以通过x_i = |A_i|/D来得到。

克拉默法则的优点是简单直观,但是当方程组的规模很大时,计算行列式将变得非常复杂。

四、矩阵的广义逆法矩阵的广义逆法是一种应对方程组无解或者有无穷多解的情况的方法。

对于线性方程组Ax=b,如果矩阵A不可逆,我们可以通过求解广义逆矩阵A^+来得到一个特解x_0。

1. 分别计算A^+ = (A^T·A)^(-1)·A^T和x_0 = A^+·b。

线性方程组的求解方法

线性方程组的求解方法

线性方程组的求解方法线性方程组是数学中的基础概念,广泛应用于各个领域,如物理、经济学、工程学等。

解决线性方程组的问题,对于推动科学技术的发展和解决实际问题具有重要意义。

本文将介绍几种常见的线性方程组的求解方法,包括高斯消元法、矩阵法和迭代法。

一、高斯消元法高斯消元法是求解线性方程组的经典方法之一。

它的基本思想是通过一系列的行变换将方程组化为阶梯形或行最简形,从而得到方程组的解。

首先,将线性方程组写成增广矩阵的形式,其中增广矩阵是由系数矩阵和常数向量组成的。

然后,通过行变换将增广矩阵化为阶梯形或行最简形。

最后,通过回代法求解得到方程组的解。

高斯消元法的优点是简单易懂,容易实现。

但是,当方程组的规模较大时,计算量会很大,效率较低。

二、矩阵法矩阵法是求解线性方程组的另一种常见方法。

它的基本思想是通过矩阵运算将方程组化为矩阵的乘法形式,从而得到方程组的解。

首先,将线性方程组写成矩阵的形式,其中矩阵是由系数矩阵和常数向量组成的。

然后,通过矩阵运算将方程组化为矩阵的乘法形式。

最后,通过求逆矩阵或伴随矩阵求解得到方程组的解。

矩阵法的优点是计算效率高,适用于方程组规模较大的情况。

但是,对于奇异矩阵或非方阵的情况,矩阵法无法求解。

三、迭代法迭代法是求解线性方程组的一种近似解法。

它的基本思想是通过迭代计算逐步逼近方程组的解。

首先,将线性方程组写成矩阵的形式,其中矩阵是由系数矩阵和常数向量组成的。

然后,选择一个初始解,通过迭代计算逐步逼近方程组的解。

最后,通过设定一个误差限,当迭代结果满足误差限时停止计算。

迭代法的优点是计算过程简单,适用于方程组规模较大的情况。

但是,迭代法的收敛性与初始解的选择有关,有时可能无法收敛或收敛速度较慢。

综上所述,线性方程组的求解方法有高斯消元法、矩阵法和迭代法等。

每种方法都有其适用的场景和特点,选择合适的方法可以提高计算效率和解决实际问题的准确性。

在实际应用中,根据问题的具体情况选择合适的方法进行求解,能够更好地推动科学技术的发展和解决实际问题。

线性方程组的解法

线性方程组的解法

线性方程组的解法线性方程组是数学中的重要概念,广泛应用于各个领域。

解决线性方程组可以帮助我们求解未知数的值,解释不同变量之间的关系。

本文将介绍线性方程组的解法,包括高斯消元法和矩阵法。

一、高斯消元法高斯消元法是解决线性方程组的一种常见方法。

它通过逐步操作将方程组转化为一种更容易求解的形式。

下面以一个三元一次方程组为例进行说明:方程组1:2x + 3y - z = 63x + 2y + 2z = 5x - 2y + z = 0首先,将方程组写成增广矩阵的形式:[2 3 -1 | 6][3 2 2 | 5][1 -2 1 | 0]然后,通过初等行变换,将增广矩阵化简成上三角矩阵的形式。

具体步骤如下:1. 将第一行乘以3,将第二行乘以2,分别得到新的第一行和第二行。

[6 9 -3 | 18][6 4 4 | 10][1 -2 1 | 0]2. 将第二行减去第一行,将第三行减去第一行,分别得到新的第二行和第三行。

[6 9 -3 | 18][0 -5 7 | -8][1 -2 1 | 0]3. 将第二行除以-5,得到新的第二行。

[6 9 -3 | 18][0 1 -7/5 | 8/5][1 -2 1 | 0]4. 将第一行减去9倍的第二行,得到新的第一行。

[6 0 48/5 | -72/5][0 1 -7/5 | 8/5][1 -2 1 | 0]5. 将第一行除以6,得到新的第一行。

[1 0 8/5 | -12/5][0 1 -7/5 | 8/5][1 -2 1 | 0]至此,我们得到了一个上三角矩阵。

接下来,通过回代来求解变量的值。

1. 由最后一行我们可以得到 z = 0。

2. 将 z = 0 代入到第一行和第二行,可以得到:x + 8/5 = -12/5,即 x = -4;y - 7/5 = 8/5,即 y = 3。

所以,原始方程组的解为 x = -4,y = 3,z = 0。

二、矩阵法除了高斯消元法,我们还可以使用矩阵法来解决线性方程组。

线性方程组的解法

线性方程组的解法

线性方程组的解法线性方程组是数学中常见的问题,解决线性方程组可以帮助我们求解各种实际问题。

在本文中,我们将介绍几种常见的求解线性方程组的方法。

一、高斯消元法高斯消元法是最常见、最简单的一种求解线性方程组的方法。

该方法的基本思想是通过一系列的行变换将线性方程组化为简化的梯形方程组,并进一步求解出方程组的解。

具体的步骤如下:1. 将线性方程组写成增广矩阵的形式。

2. 选取矩阵中的一个元素作为主元,将主元所在的行进行换位,使主元尽可能地靠近对角线。

3. 使用消元法,通过将主元下方的所有元素消为零,将矩阵化为简化的梯形矩阵。

4. 从最后一行开始,逆推求解出每个未知数的值。

高斯消元法的优点是简单易懂,适用于一般的线性方程组。

然而,该方法在涉及大规模矩阵的情况下计算量较大,效率相对较低。

二、矩阵的逆和逆矩阵法矩阵的逆和逆矩阵法是通过求解矩阵的逆矩阵来求解线性方程组的方法。

这种方法需要先求出矩阵的逆矩阵,然后利用逆矩阵和增广矩阵相乘得到方程组的解。

具体的步骤如下:1. 将线性方程组写成增广矩阵的形式。

2. 求解增广矩阵的逆矩阵。

3. 将逆矩阵与增广矩阵相乘,得到方程组的解。

矩阵的逆和逆矩阵法的优点是适用于包含多个方程组的情况,且相对于高斯消元法在计算大型矩阵时具有更高的效率。

然而,该方法要求矩阵可逆,且逆矩阵存在才能得到准确的解。

三、克拉默法则克拉默法则是一种基于行列式的方法,用于求解含有n个未知数的n个线性方程组的解。

该方法通过求解方程组的行列式来得到各个未知数的解。

具体的步骤如下:1. 将线性方程组写成矩阵形式,并求出系数矩阵的行列式D。

2. 分别将系数矩阵的每一列替换成常数项的列向量,分别求出替换后的矩阵的行列式D1、D2...Dn。

3. 通过D1/D、D2/D...Dn/D得到方程组的解。

克拉默法则的优点是对于小规模的线性方程组简单易懂,但对于大规模的线性方程组计算量较大,效率较低。

总结:以上介绍了几种常见的线性方程组的求解方法,包括高斯消元法、矩阵的逆和逆矩阵法,以及克拉默法则。

线性方程组的解法

线性方程组的解法

线性方程组的解法一、引言线性方程组是数学中的重要概念,广泛应用于各个领域,包括物理学、经济学、工程学等。

解决线性方程组有多种方法,本文将介绍常见的三种解法:高斯消元法、矩阵法和克拉默法。

二、高斯消元法高斯消元法是一种基于矩阵变换的解法,可以将线性方程组转化为简化行阶梯形矩阵,从而快速求解解向量。

具体步骤如下:1. 将线性方程组写成增广矩阵形式;2. 选择一个非零首元,在该列中其余元素乘以某个系数并相减,使得除首元外该列其他元素变为零;3. 重复第二步,直至将矩阵转化为简化行阶梯形矩阵;4. 从简化行阶梯形矩阵中读出解。

三、矩阵法矩阵法是一种基于矩阵运算的解法,将线性方程组转化为矩阵形式,并求解矩阵的逆矩阵,从而得到解向量。

具体步骤如下:1. 将线性方程组写成矩阵形式;2. 求解矩阵的逆矩阵;3. 用逆矩阵乘以等号右边的向量,得到解向量。

四、克拉默法克拉默法是一种利用行列式性质求解线性方程组的方法,适用于方程组个数与未知数个数相等的情况。

具体步骤如下:1. 将线性方程组写成矩阵形式;2. 计算行列式的值;3. 分别用等号右边的向量替换矩阵中对应的列,再求解行列式的值;4. 将第三步得到的值除以第二步得到的值,得到解向量。

五、比较与应用场景1. 高斯消元法在实际计算中具有高效性和稳定性,适用于任意线性方程组求解;2. 矩阵法需要先求解矩阵的逆矩阵,计算过程相对复杂,适用于方程组个数与未知数个数相等的情况;3. 克拉默法计算过程较为复杂,不适用于大规模方程组的求解,但对于小规模方程组求解比较便捷。

六、总结线性方程组的解法有多种,本文介绍了高斯消元法、矩阵法和克拉默法三种常见方法。

应根据具体情况选择合适的方法来求解线性方程组,以达到高效、准确的目的。

对于大规模方程组的计算,高斯消元法更具优势;对于方程组个数与未知数个数相等的情况,矩阵法和克拉默法更适用。

随着数学计算方法的不断发展,越来越多的解法将出现,为解决复杂的线性方程组提供更多选择。

线性方程组的解法

线性方程组的解法

线性方程组的解法线性方程组是数学中常见的问题,它可以表示为多个线性方程的组合,我们需要找到满足所有方程的解。

下面将介绍几种常用的线性方程组解法。

一、高斯消元法高斯消元法是最常用的线性方程组解法之一,它通过矩阵的初等行变换,将线性方程组转化为等价的简化行阶梯形矩阵。

具体步骤如下:1. 将线性方程组写成增广矩阵的形式;2. 选取一个主元(通常是矩阵的第一行第一列元素);3. 将选中的主元通过初等行变换变为1,并将该列其他元素通过初等行变换变为0;4. 重复上述步骤,直到将整个矩阵化简成行阶梯形矩阵。

通过高斯消元法得到的行阶梯形矩阵可以帮助我们找到线性方程组的解。

如果矩阵中存在形如0=1的方程,则说明该线性方程组无解。

二、克拉默法则克拉默法则是另一种解线性方程组的方法,它利用了行列式的概念。

对于一个n元线性方程组Ax=b,其中A为系数矩阵,x为未知数向量,b为常数向量,如果A的行列式不为0,那么该线性方程组有唯一解,可以通过如下公式求解:xi = |Ai| / |A|, i=1,2,...,n其中|Ai|表示将A的第i列替换成向量b后的新矩阵的行列式,|A|为A的行列式。

克拉默法则的优点是直观易懂,适用于较小规模的线性方程组。

然而,它的计算过程较为繁琐,不适用于大规模线性方程组的求解。

三、矩阵求逆法对于一个n元线性方程组Ax=b,我们可以通过求解系数矩阵A的逆矩阵来得到方程组的解:x = A^(-1) * b其中A^(-1)表示A的逆矩阵,*为矩阵乘法运算。

然而,矩阵求逆法在实际应用中往往需要消耗大量的计算资源和时间,尤其是在维数较高的情况下。

因此,该方法适用于对较小规模的线性方程组求解。

四、迭代法迭代法是一种数值解法,适用于大规模稀疏线性方程组的求解。

其基本思想是通过迭代计算逼近线性方程组的解。

常用的迭代方法有雅可比迭代法、高斯-赛德尔迭代法和超松弛迭代法等。

雅可比迭代法的计算公式为:xi(k+1) = (bi - Σ(aij * xj(k))) / aii, i = 1, 2, ..., n其中k表示迭代的次数,xi(k)表示第k次迭代后第i个未知数的值。

线性方程组的解法

线性方程组的解法

线性方程组的解法线性方程组是数学中重要的概念,它是由一系列线性方程组成的方程组。

解决线性方程组的问题在实际应用中具有重要意义,因为它们可以描述许多自然和社会现象。

本文将介绍几种常见的线性方程组的解法,包括高斯消元法、矩阵法以及向量法。

一、高斯消元法高斯消元法是解决线性方程组的常用方法之一。

它通过对方程组进行一系列的消元操作,将方程组转化为简化的等价方程组,从而求得方程组的解。

步骤如下:1. 将线性方程组写成增广矩阵的形式,即将所有系数按照变量的次序排列,并在最后一列写上等号右边的常数。

2. 选取一个主元素,通常选择第一列第一个非零元素作为主元素。

3. 消去主元素所在的列的其他非零元素,使得主元素所在列的其他元素都变为零。

4. 选取下一个主元素,继续重复消元操作,直到将所有行都消为阶梯形。

5. 进行回代,从最后一行开始,求解每个变量的值,得到线性方程组的解。

二、矩阵法矩阵法是另一种解决线性方程组的常用方法。

它将线性方程组写成矩阵形式,通过矩阵的运算求解方程组的解。

步骤如下:1. 将线性方程组写成矩阵形式,即系数矩阵乘以未知数向量等于常数向量。

2. 对系数矩阵进行行变换,将系数矩阵化为行阶梯形矩阵。

3. 根据行阶梯形矩阵,得到线性方程组的解。

三、向量法向量法是解决线性方程组的一种简洁的方法。

它将线性方程组转化为向量的内积形式,通过求解向量的内积计算方程组的解。

步骤如下:1. 将线性方程组写成向量的内积形式,即一个向量乘以一个向量等于一个数。

2. 根据向量的性质,求解向量的内积,得到线性方程组的解。

以上是几种常见的线性方程组的解法。

在实际应用中,根据具体情况选择适合的解法,以高效地求解线性方程组的解。

通过掌握这些解法,可以更好地解决与线性方程组相关的问题,提高问题的解决能力。

结论线性方程组是数学中重要的概念,解决线性方程组的问题具有重要意义。

通过高斯消元法、矩阵法和向量法等解法,可以有效求解线性方程组的解。

线性方程组的解法

线性方程组的解法

线性方程组的解法在数学中,线性方程组是由一系列线性方程组成的方程集合。

解决线性方程组是数学中的一个重要问题,在实际应用中也有广泛的应用。

本文将介绍几种常见的线性方程组的解法,以帮助读者更好地理解和应用这些方法。

一、高斯消元法高斯消元法是解决线性方程组的一种常见且经典的方法。

它通过一系列的行变换,将线性方程组化简为一个上三角矩阵,从而求得方程组的解。

具体步骤如下:步骤1:将线性方程组写成增广矩阵的形式。

步骤2:选取一个非零的系数作为主元素,并将该系数所在行作为当前行。

步骤3:将主元素所在列的其他行元素都通过初等变换变为0。

步骤4:重复步骤2和步骤3,直到将矩阵化简为上三角形式。

步骤5:回代求解,得到线性方程组的解。

高斯消元法是一种直观且容易理解的解法,但对于某些特殊的线性方程组,可能会遇到无解或者无穷多解的情况。

二、矩阵的逆乘法矩阵的逆乘法是另一种解决线性方程组的方法,它通过矩阵的逆和向量的乘法,将线性方程组表示为一个矩阵方程,从而求得方程组的解。

具体步骤如下:步骤1:将线性方程组表示为增广矩阵的形式。

步骤2:判断增广矩阵的系数矩阵是否可逆,如果可逆,则存在矩阵的逆。

步骤3:计算增广矩阵的系数矩阵的逆。

步骤4:将原始线性方程组表示为矩阵方程形式,即AX = B。

步骤5:求解矩阵方程,即X = A^(-1)B。

矩阵的逆乘法是一种简便且高效的解法,但需要注意矩阵的可逆性,在某些情况下可能不存在逆矩阵或者矩阵的逆计算比较困难。

三、克拉默法则克拉默法则是一种基于行列式求解线性方程组的方法。

它通过计算方程组的系数行列式和各个未知数在方程组中的代数余子式,从而求得方程组的解。

具体步骤如下:步骤1:将线性方程组的系数和常数项构成一个矩阵。

步骤2:计算系数矩阵的行列式,即主行列式D。

步骤3:分别将主行列式D中的每一列替换为常数项列,计算得到各个未知数的代数余子式。

步骤4:根据克拉默法则的公式,未知数的值等于其对应的代数余子式除以主行列式D。

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

线性方程组的解法1 引言在科学研究和大型工程设计中出现了越来越多的数学问题,而这些问题往往需要求数值解。

在进行数值求解时,经离散后,常常归结为求解形如Ax= b的大型线性方程组。

而如插值公式,拟合公式等的建立,微分方程差分格式的构造等,均可归结为求解线性方程组的问题.在工程技术的科学计算中,线性方程组的求解也是最基本的工作之一.因此,线性方程组的解法一直是科学和工程计算中研究最为普遍的问题,它在数值分析中占有极其重要的地位。

20世纪50年代至70年代,由于电子计算机的发展,人们开始考虑和研究在计算机上用迭代法求线性方程组Ax =b的近似解,用某种极限过程去逐渐逼近精确解,并发展了许多非常有效的迭代方法,迭代法具有需要计算机存储单元少、程序设计简单、原始系数矩阵在计算过程中始终不变等优点。

例如Jacobi方法、Gauss—Seidel 方法、SOR 方法、SSOR方法,这几种迭代方法是最常用的一阶线性定常迭代法。

2 主要算法20世纪50年代至70年代,人们开始考虑和研究用迭代法求解线性方程组。

Ax = b (1)的近似解,发展了许多有效的方法,其中有Jacobi方法、Gauss—Seidel方法,SOR方法、SSOR方法,这几种迭代方法均属一阶线性定常迭代法,即若系数矩阵A的一个分裂:A =M-N ;M 为可逆矩阵,线性方程组(1)化为:(M-N)X =b;→M X = NX + b;→X= M -1NX+ M-1b得到迭代方法的一般公式:X(k+1)=HX(k)+d (2)其中:H =MN-1,d=M-1b,对任意初始向量X(0)一阶定常迭代法收敛的充分必要条件是: 迭代矩H的谱半径小于1,即ρ(H) < 1;又因为对于任何矩阵范数恒有ρ(H)≤‖H‖,故又可得到收敛的一个充分条件为:‖H‖< 1。

2.1 Jacobi迭代法若D为A的对角素构成的对角矩阵,且对角线元素全不为零。

系数矩阵A的一个分解:A= D -(L +U); 这里D 为A 的对角素构成的对 角矩阵, 为严格下三角阵,U 为严格上三角阵。

Jacobi 迭代的矩阵形式为 :X (k+1)=HJX (k )+dJ(3)(3) 式中: dJ= D-1b;HJ=I -D-1A,称HJ 为Jacobi 迭代矩阵.其计算公式为:迭代矩阵HJ 的谱半径ρ(H) < 1,则对于任意迭代初值X (0),Jacobi 迭代法收敛。

2.2 Gauss-Seidei 迭代法对于非奇异方程组,若D 为A 的对角素构成的对角矩阵,且对角线元素全不为零;系数矩阵A 的一个分解:A = (D -L)-U(5)Gauss-Seide 迭代矩阵形式为:X (k+1)=HGSX(k)+dGS上式中: HGS=(D -L)-1U ;dGS=(D -L)-1L称HGS 为G-S 迭代矩阵。

计算公式为:i=1,2,3,…nk=0,1,2,…(6)若A 为严格或不可约对角占优矩阵,或A 为对称正定阵,则对于任意初值X (0),Gauss-Seide 迭代法收敛。

2.3 SOR(successive over relaxation)迭代法对于非奇异方程组,若D 为A 的对角素构成的 对角矩阵,且对角线元素全不为零;系数矩阵A 的一个分解:(7)⎪⎭⎫⎝⎛+--⎪⎭⎫ ⎝⎛-=U D w w L D w A 11这里D 为A 的对角素构成的对角矩阵,为严格下三角阵,为严格上三角阵。

SOR 迭代法的矩阵形式为 X (k+1)=HSOR X(k)+dSOR式中 :w w wHSOR=(D-L)-1 [ (1-) D + U]w wd SOR= ( D-L )-1b。

计算公式为:i=1,2,3,...n k=0,1,2, (8)然后按相反的次序(i= n,n-1,…1)用向后的SOR方法逐点计算i= n,n-1,...1;k=0,1, (11)w若AX= b中A是正定的,且0﹤﹤2,则SSOR法收敛。

2.4 消元法消元法是初等数学中求解低阶多元线性方程组的方法.此时线性方组必须是适定方程组.一般是用于二元一次或三元一次方程组.当未知元增多时.计算效率低甚至无法求解.2.5 克拉默法则当系数行列式不为零时.适定方程组有惟一解.其解如(12)式所示:xi= Di /D i=1,2,…,n (12)其中D是系数行列式,Di是在系数行列式基础之上结合方程组右边常数形成的新行列式。

在此法则中。

行列式的计算显得非常重要。

用行列式的性质计算行列式最为有效。

对于二、三阶行列式可以利用对角线法则计算。

克拉默法则克服了消元法计算效率低甚至无法计算多元一次方程组的缺点.但是对于系数行列式等于零以及欠定或者超定方程组的情况,它是无能为力的。

事实上,当未知元数过多时(如未知元数≥5)。

克拉默法则的计算效率就很低。

2.6 逆阵乘积法对于适定方程组.可以把它表达成矩阵方程的形式:AX=b解矩阵可以利用逆阵乘积法求出:A-1 b = X矩阵运算的实质是把矩阵当作一个“量”来运算。

使普通数的运算有很大的简化。

但是该方法的前提是A可逆。

本质上仍然是系数行列式|A|≠0.对于阶数比较高的系数矩阵.直接求解逆阵也是比较困难的(利用初等变换可以降低求解难度)。

当|A|=0时,或者对于欠定或者超定方程组,逆阵乘积法仍然是无能为力的或不适合的。

2.6 初等变换法对于欠定或超定方程组的求解。

初等变换法是最直接、最简单的方法。

同时该方法也能用于适定方程组的求解。

因此,初等变换法是一种求解线性方程组的普适方法和最基本方法。

秩是矩阵的本征参数.利用系数矩阵的秩和增广矩阵秩的关系,可以判断线性方程组解的情况:无解,惟一解和无穷多解。

对增广矩阵进行初等变换.可以得到增广矩阵的等价矩阵.从而得到了原来方程组的等价方程组。

由于等价矩阵已变换成阶梯形矩阵或最简形矩阵,所以等价方程组变得非常简单。

可以方便地求出解。

初等变换也是求逆阵的一种直观方法.所以可以和阵乘积法配合运用。

2.7 利用向量空间概念求解线性方程组如果把齐次线性方程组的解集看作是一个向量空间。

由于一个向量组(向量空间)与它的一个最大无关组等价。

则只需求出解集的一基础解系即可确定齐次线性方程组的解。

求解的方法仍然采用初等变换法.解的形式可以用通解来表达.更能说明解的本质。

尤其是无穷多解。

基础解系中线性无关的向量形成解向量空间的一个最大无关组。

在非齐次方程组求解中.只要求出对应齐次方程组的通解。

然后加上非齐次方程组的一个特解即可.而且这种通解和特解可以在一次初等变换中求出。

2.7 Krylov子空间方法Krylov子空间方法是解决大型线性方程组的一类十分有效的方法,其主要代表是对称正定线性方程组的共轭梯度法和非对称线性方程组的GMRES方法。

20世纪50年代初期由Hestenes和Stiefel首先提出的共轭梯度法(或简称CG法)。

近20年来有关的研究取得了前所未有的发展,目前有关的方法和理论已经相当成熟,并且成为求解大型稀疏线性方程组十分有效的一类方法。

w w通过对经典迭代法的总结,发现SOR迭代法在松弛因子取最优松弛因子opt的情况w下,迭代收敛很快。

但是,计算opt还需要求得对应的Jacobi迭代矩阵的谱半径,这常常是比较困难的。

考虑线性方程组:Ax= b (13)的求解问题,其中A是给定的n阶对称正定阵,b是给定的n维向量,x是待求的n维向量。

为此定义二次泛函数Ψ( x) = xTA x -2bTx (14)则可以证明求方程组(13)的解等价于求二次泛函(14)的极小点。

由此,给定了初始向量x(0),按某一方向去求式(14)的极小值点x(1),就得到下一个迭代值x(1),再由x(1)出发,求x(2)等等。

这样来逼近精确解x*.若取求最小值的方向为Ψ在x(k-1)(k =1,2,⋯)处的负梯度方向,就是所谓的最速降法。

然而理论和实际计算表明这个方法的收敛速度较慢,共轭梯度法则是在x(k-1)处的梯度方向r(k-1)和这一步的修正方向p(k-1)所构成的二维平面内,寻找使Ψ减少最快的方向作为下一步的修正方向,即求极小值的方向p(k)(其第一步仍取负梯度方向).计算公式为p(1)=r(0)=b- x(0)再逐次计算qk=( r(k-1),r(k-1))/(A p(k), p(k)),((x,y)表示向量xy的内积x(k)= x(k-1)+ qk p(k)r(k)= r(k-1)- qk p(k)ek=(r(k),r(k))/(r(k-1),r(k-1))p(k+1)= r(k)+ ek p(k)(k=1,2,…)可以证明当i≠j时,(p(i),A p(j))=0,(ri,rj)=0从而p(1),p(2)….形成一共轭向量组;r(0),r(1)…形成一正交向量组。

后者说明若没有舍入误差的,至多n次迭代就可以得到线性方程组(14)的精确解。

然而,在实际计算中一般都有舍入误差,所以r(0),r(1)…并不是真正相交,而x(0),x(1)…等也只是逐步逼近式(14)的真解,故我们将共轭梯度法作为迭代法来使用。

3 数值实验下面通过一个数值实例来比较Jacobi方法、Gauss-Seidel方法、SOR方法的收敛速度。

数值实验:我们取一个系数矩阵为64阶的线性方程组:A X= b。

其中:精确解:X=(1 1 1 1…1)T1×64; X(0) (0 0 0 0…1)T1×64; 精度为:0.0001.执行C语言程序interrator-method. C得到result.txt文件。

得到三种迭代法的对比表1.表1 三种方法的迭代性能Method IT CPU Time/ms‖x(k)-x∞‖∞InfoJacobi18 3.000008.19628×10-5Gauss-Seidel10 2.00000 1.68O24×10-5几乎比Jacobi收敛速度快一倍SOR with=1.0w 10 2.000001.68024×10-5SORwith=optw w 6 1.000005.47552×10-6SOR with=1.5w 17 3.000002.09836×10-5退化成Gauss_ Seidel迭代使SOR迭代达到最快的取值于SORw迭代的收敛速度影响很大4 优点克拉默法则、逆阵乘积法只能求解系数行列式不为零的适定方程组;初等变换法可以直观地解决所有类型的超定、欠定、适定方程组,是一种普适的方法;利用向量空间概念求解线性方程组,更能从本质上把握线性方程组的解的性质。

应用MATL B语言编程可以轻松实现这些求解方法。

实用共轭梯度法主要有以下优点:w p1)算法中,系数矩阵A的作用仅仅是用来由已知向量P产生向量=A,这就充分利用p w p了A的稀疏性。

相关文档
最新文档