线性方程组的求解问题摘要:线性代数是代数学的一个重要组成部分,广泛应用于现代科学的许多分支。其核心问题之一就是线性方程组的求解问题。本文先简要介绍了线性方程组求解的历史,然后给出线性方程组解的结构。重点介绍了解线性方程组的几种方法:消元法,克拉默法则和利用向量空间概念求解线性方程组的方法。最后介绍了如何利用Matlab、Excel等常用电脑软件解线性方程。关键词:线性方程组克拉默法则Matlab1.线性方程组求解的历史线性方程组的解法,早在中国古代的数学著作《九章算术》方程章中已作了比较完整的论述。其中所述方法实质上相当于现代的对方程组的增广矩阵施行初等行变换从而消去未知量的方法,即高斯消元法。在西方,线性方程组的研究是在17世纪后期由莱布尼茨开创的。他曾研究含两个未知量的三个线性方程组组成的方程组。麦克劳林在18世纪上半叶研究了具有二、三、四个未知量的线性方程组,得到了现在称为克莱姆法则的结果。克莱姆不久也发表了这个法则。18世纪下半叶,法国数学家贝祖对线性方程组理论进行了一系列研究,证明了一元齐次线性方程组有非零解的条件是系数行列式等于零。法国数学家范德蒙不仅对行列式理论本身进行了开创性研究,而且把行列式应用于解线性方程组。英国数学家凯莱用矩阵表示线性方程组及线性方程组的解。19世纪,英国数学家史密斯和道奇森继续研究线性方程组理论,前者引进了方程组的增广矩阵和非增广矩阵的概念,后者证明了n个未知数m个方程的方程组相容的充要条件是系数矩阵和增广矩阵的秩相同。格拉斯曼则使用向量表示线性方程组的解。2.线性方程组解的结构n元线性方程组的一个解(c1,c2,……cn)是一个,维向量,当方程组有无穷多个解时,需要研究这些解向量之间的关系,以便更透彻地把握住它们。关于齐次线性方程组的解的结构有以下结论:1)定义1齐次线性方程组的一组解η1,η2……ηt称为该方程组的一个基础解系,如果a)该方程组的任一解都能表成η1,η2……ηt的线性组合。b)η1η2……ηt线性无关。2)齐次线性方程组的两个解的和还是解,一个解的倍数还是解。3)齐次线性方程组有非零解时必定存在基础解系,并且一个基础解系里有n-r个解,其中n是未知量的个数,r是系数矩阵的秩。如果系数在数域P中的齐次线性方程组①的一个基础解系是:η1,η2……ηn-r,则①的全部解为k1η1+k2η2+……+kn-rηn-r其中k1,k2,……kn-r取遍取遍数域P中全部数。3.线性方程组的求解方法3.1消元法解线性方程组的最基本最有效的方法是消元法。它的做法是:先把线性方程组的增广矩阵经过矩阵的初等行变换化成阶梯形,然后去解相应的阶梯形方程组。或者把线性方程组的增广矩阵经过初等行变换化成行简化阶梯形,从而可立即写出方程组的解。消元法是求解低阶多元线性方程组的方法,此时线性方程组必须是适定方程组,一般是用于二元一次或三元一次方程组,当未知元增多时,计算效率低甚至无法求解。3.2克拉默法则当系数行列式小为零时,适定方程组有惟一解,其解为:(i=1,2,……,n)其中D是系数行列式,D是在系数行列式基础之上结合方程组右边常数形成的新行列式)在此法则中,行列式的计算显得非常重要)利用行列式的性质计算行列式最为有效,对于二、三阶行列式可以利用对角线法则计算。克拉默法则克服了消元法计算效率低甚至无法计算多元一次方程组的缺点,但是对于系数行列式等于零以及欠定或者超定方程组的情况,它是无能为力的)事实上,当未知元数过多时,克拉默法则的计算效率就很低。3.3利用向量空间概念求解线性方程组其实就是利用基础解析求解方程组。这里只说对非齐次线性方程组的解法,齐次方程组也可用类似方法。设A∈Fm*n,b=(b1,b2,……,bn),有非齐次线性AX=b②令,则C总可经过一系列初等变换了初等行变换仅对前,n行施行,初等列变换中,最后一列只能作前而列的倍数加到该列上的变换夕,化为其中D∈Fm*n,Em1=0或(D,E)=r+1方程组②式有解当民仅当Em1=0。G中的N的各列为②式的导出组的基础解系,②式有解时,G中Un1为了②式的一个特解.方程组②式有解时,其通解为X=Un1+NH,其中H∈F(n-r)*1,为任意的。例1.解线性方程组解E=(0,0,0),U=(-2,1,0,0),η1=(8,-6,1,0),η2=(-7,5,0,1)故方程组的一般解为X=U+k1η1+k2η2,k1,k2为任意数.4.线性方程组的解法在MATLAB中的实践MATLAB语言是一种以矩阵运算为基础的计算语言,对于实现线性方程组的求解非常方便、对一个四兀一次方程组的求解,可以用克拉默法则和逆阵乘积法来实现,程序如下:tic;D=[1111;12-14;2-3-1-5;31211];det(D)b=[5-2-20];D1=[5111;-22-14;-2-3-1-5;01211];D2=[1511;1-2-14;2-2-1-5;30211];D3=[1151;12-24;2-3-2-5;31011];D4=[1115;12-1-2;2-3-1-2;3120];X1=det(D1)/det(D);X2==det(D2)/det(D);X3=det(D3)/det(D);X4=det(D4)/det(D);X5=inv(D)*b;toc其中克拉默法则用行列式除法Xi=det(Di)/det(D)来实现;逆阵乘积法用X=inv(D)*b来实现;det(D)是系数矩阵D的行列式运算;inv(D)是D的逆阵运算。上例中,系数矩阵D不为零,可以用克拉默法则和逆阵乘积法来求解。当系数行列式为零时,只能用初等变换来求解。对于初等变换,利用阶梯生成函数命令rref也可以轻松地实现,举例如下:tic;A=[3,-4,3,2,-1;0,-6,0,-3,-3;4,-3,4,2,-2;1,1,1,0,-1;-2,6,-2,1,3]b=[2;-3;2;0;1];B=[A,b],[UB,ip]=rref(B)U0=UB([1:5],[1:5]),d=UB(:,6)tocUB为经过初等变换以后的行阶梯矩阵,可以轻松地求出方程组的解。可见,MATLAB语言实现线性方程组的求解具有程序简单、直观的特点,同时还具有计算效率高的优点,在实际计算巾摆脱了系数矩阵阶数未知元数等的限制。5.线性方程组的解法在EXCEL中的实践例2.1)把方程组的增广矩阵依次输人到A1;E4单元格区域内。2)用鼠标拖曳选中区域A5:D8,其大小与系数矩阵相同,单击“插入”“函数”按钮出现函数粘贴对话框,选中左侧“数学与三角函数”,再在其右侧选中求逆矩阵函数“MINVRSE,如图。3)单击“确定”按钮,在对话框的array文本框中填人系数矩阵区域A1:D4,同时按住Ctrl和Shift键,再敲Enter键,这时系数矩阵的逆矩阵被算出并显示在A5:D8区域。4)选中单元格区域E5:E8,单击“粘贴函数”按钮出现函数粘贴对话框如图2,在其中选中函数“mmult”再单击“确定”按纽,出现对话框如图。5)在array1中输人A5:D8,在array2对话框中输人E1:E4,然后,同时按住Ctrl键和Shift键再敲Enter键,则方程组的解显示在区域D5:D8中,即X1=1,X2=2,X3=3,X4=-1。6.总结本文首先介绍了一些线性组解法的历史,然后主要介绍了线性方程组的几种解法。消元法,克拉默法则和利用向量空间概念求解线性方程组,即利用基础解系解方程组。不仅如此,我认为我们不仅要学会做题目时会用方法解题,也需要具备在电脑上利用不同软件解线性方程组的能力,所以介绍了线性方程组在Matlab和excel中的计算方法。参考文献【1】李尚志线性代数[M]高等教育出版社【2】李排昌矩阵与解线性方程组[J]中国人民公安大学学报,2011年,第3期【3】李桂荣、韩忠月、梁超线性方程组的简便解法[J]德州学院学报,2007年8月,第23卷(第4期)【4】姬五胜线性方程组解法及其MATLAB实践[J]天水师范学院学报2009年3月,第29卷(第2期)【5】陈建莉线性方程组解法新探[J]纺织高校基础科学学报,2008年6月,第21卷(第2期)【6】康国强、尹卫红一类线性方程组的Excel解法[J]安阳大学学报线性方程组的简便解法://wenku.baidu.com/link?url=iD-32-PwVkxuVHK4kN34k5oq4QPfTCdPjujrnS4EfnN5bxG1dEf0IV9hX0W5zpUpvufhDI8vQPSBivQippF5yLQkt1muVq7hx6O-djamscG