首页 > 范文大全 > 正文

求解线性方程组直接法的Excel实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇求解线性方程组直接法的Excel实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:介绍了在Excel工作表中,用直接法求解线性方程组的具体实现方法。列举了线性方程组求解的Gauss消去法和三角分解法。方法简单,结果直观。

关键词:Excel;线性方程组;Gauss消去法;三角分解法

中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)18-2pppp-0c

The Realization of Solving Linear Equation Groups with Direct Method in Excel

LU Jin-mei,QU Shuang-hong

(Dept.of Infor. and Computation Sci.,Zhengzhou Inst.of Light Ind.,Zhengzhou 450002,China)

Abstract:The direct method of solving the linear equation groups is introduced in Excel schedule.The method of Gauss cancle element and triangular decomposition is illustrated.The approach is simple and the result is direct.

Key words:Excel;the linear equation groups;the method of Gauss cancle element;the method of triangular decomposition

1 引言

Excel是微软公司开发的非常出色的电子表格软件,提供了多种数据格式,但在实际应用中,大多数用户仅

是用Excel的表格功能进行简单的数据排序、筛选等数据处理,而忽略了Excel表格的强大计算功能。其实,仅用Excel工作表就可以完成诸如求解线性方程组等数值计算功能。线性方程组的求解是数值分析的重要内容之一,在教学和实际工作中,计算量往往非常大,文献[1]借助Excel中的函数功能求解线性方程,计算过程是透明的,不利于学生对算法的掌握;文献[2]虽用Excel工作表进行计算,但当方程组变化时,需要重新输入公式,不具有通用性。本文介绍仅用Excel工作表求解线性方程组的通用方法,无须改变公式即可求解不同的方程组。

2 实例求解

考虑线性方程组

(1)在Excel工作表中选择一个3行4列的区域,如:A1:D3。将方程组增广矩阵的元素依次输入到该区域中去;

(2)选择另外一个3行4列区域,如A5:D7,在A5种输入公式:=A1,然后横向拉动填充柄至D5,即得到第一次消元之后增广矩阵第一行的元素(不变)。根据公式(3)可在B6中输入公式:=B2-($A2/$A1)*B1,然后横向拉动填充柄至D6,即得到第一次消元之后增广矩阵第二行的元素;在B7中输入公式:=B3-($A3/$A1)*B1,然后横向拉动填充柄至D7,即得到第一次消元之后增广矩阵第三行的元素;

(3)再另外选择一个3行4列区域,如A9:D11,在A9中输入公式:=A5,然后横向拉动填充柄至D5,即得到第二次消元之后增广矩阵第一行的元素(不变);在B10中输入公式:=B6,然后横向拉动填充柄至D10,即得到第二次消元之后增广矩阵第二行的元素(不变);在C11中输入公式:= C7-($B7/$B6)*C6,然后横向拉动填充柄至D11,即得到第二次消元之后增广矩阵第三行的元素,从而完成消元过程;

(4)最后选择一个3行1列区域,如F9:F11,根据公式(4)可在F11、F10、F9中分别输入公式:=D11/C11、=(D10-C10*F11)/B10、=(D9-(B9*F10+C9*F11))/A9,这就完成了回代过程,按Enter键即得到原方程组的解(显示在区域F9:F11)。

注:① 消元过程中,被消为0的元素,可省去不写(如上述过程中的A6,A7,A10,A11,B11等单元)。

② 如果想求解其它符合条件的三阶线性方程组,只需将其增广矩阵的元素填入区域A1:D3,马上可得新的方程组的解(过程及结果仍显示在区域原来位置)。如解方程组

qsh06.tif

只需在将本题的增广矩阵输入A1:D3中,立即可得该方程组的解:x = (1,2,3)T(显示在区域F9:F11)。

2.2三角分解法

设(1)的系数矩阵A有三角分解式[3]:

A = LU

其中L为单位下三角阵,U为上三角阵,即

qsh07.tif

则求解方程组(1)就等价于求解两个三角形方程组:

直接三角分解法解(1)的计算公式为:

[例2] 用直接三角分解法解方程组

求解步骤如下:(如图2)

(1)类似于[例1]的第1)步,先输入增广矩阵的元素(区域A1:D3);

(2)再选定一个3行4列区域(A5:C7),利用公式(7)(8)(9)在相应单元格中输入相应的excel公式可得到L和U的元素;

(3)选定一个3行1列区域(E5:E7),利用公式(10)在相应单元格中输入相应的Excel公式可得到方程组(5)的解向量 的元素;

(4)最后选定一个3行1列区域(F5:F7),利用公式(11)在相应单元格中输入相应的Excel公式可得到方程组(6)的解向量 的元素,即原方程组的解(显示在区域F5:F7)。

注:①上述第2)步中,由于矩阵L的对角元均为1,无需保存,所以将L和U的元素放在一个区域(A5:C7)中,元素存放的具置为:Qsh14.tif

②若用平方根法解对称正定线性方程组或用追赶法解三对角线性方程组,方法类似,只需将公式作相应的改动即可。

3 结论

在Excel工作表中,求解线性方程组的直接法非常容易实现,不仅省去了编程的麻烦,也不用调用库函数,更不用专门的数学软件,只需会简单的操作即可。如果想用直接法求解其它符合条件的三阶线性方程组,只需将其增广矩阵的元素填入相应区域,马上可得新的方程组的解。当然也可以求解高阶的线性方程组,只需相应地增加一些公式即可。

需要注意的是,这种方法只适用于系数矩阵各阶顺序主子式均非0的方程组,对于Gauss列主元消去法需人工选主元。另外,对于有无穷多解和无解的情况,结果的提示是一样的,须仔细分辨。最后还应注意,计算结果的精度受Excel计算精度的限制,若想得到更高精度的解,还应借助于其他工具。

参考文献:

[1]张战军.用Excel求解线性方程组[J].郑州轻工业学院学报,2006,21(3):71-73.

[2]张学辉,张桂月.迭代算法在Excel中的实现[J].计算机时代,2005,1:47-48.

[3]李庆扬,王能超,易大义.数值分析(第4版)[M].北京:清华大学出版社,施普林格出版社,2001.

收稿日期:2008-03-21

基金项目:郑州轻工业学院硕士基金,基金号:572

作者简介:卢金梅(1978-),女,助教,主要研究方向:应用数学;曲双红(1973-),女,讲师,主要研究方向:应用数学。

注:“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。”