您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 线性代数方程组的求解与Matlab编程
-1-摘要在数学领域中,线性代数方程组经常会需要使用到,这也是线性代数的重要内容。基础理论知识,矩阵的构成,这些是学习线性代数求解的基本模块,矩阵的初等行(列)变换则是线性方程组求解的基础步骤。这也延伸出了很多种线性代数方程组的求解办法,比如行阶梯法、矩阵运算法等一系列办法,根据具体线性代数题目的不同,我们在求解中也可以灵活运用不同的方法。这些方法的不同优点可以更方便的帮助我们解决线性方程组求解中不同类型的题目,在具体求解过程中,矩阵和向量是基础也是重中之重,它使我们解决问题的关键。我们生活中也有很多问题会用到线性代数方程组方面的知识,所以它与我们的生活也是密不可分的。MATLAB作为一门科学与计算机方向的重要编程语言,是现如今我们可以在计算机上找到的最优秀的工具之一,它拥有强大的计算能力、图形编程能力、符号推算能力、文字处理能力、动态模拟仿真能力。atlabM拥有的强大的编程计算能力,让它可以根据本文中线性方程组的这些求解方法,分别给出在求解线性方程组中的atlabM应用,并且利用计算机对线性代数方程组进行求解。[关键词]Matlab线性方程组矩阵求解初等变换目录摘要...........................................................-1-ABSTRACT...............................................错误!未定义书签。目录...........................................................-1-1前言.............................................................-2-1.1国内外研究现状..............................................-2-1.2课题的研究意义..............................................-3-1.3本文所完成的工作............................................-3-2预备知识.........................................................-4-2.1线性方程组的定义............................................-4-2.2线性方程组有解判别定理......................................-4-2.3线性方程组解的结构..........................................-5-2.3.1齐次线性方程组的性质..................................-6-2.3.2基础解系及其存在性....................................-6-2.3.3一般线性方程组的解的结构..............................-7-3线性方程组的求解方法.............................................-8-3.1行阶梯法解线性方程..........................................-8-3.1.1初等行变换............................................-8--2-3.1.2行阶梯矩阵的生成(高斯消元过程)........................-8-3.1.3行阶梯法解欠定方程组.................................-10-3.2用矩阵运算法解线性方程组...................................-10-3.2.1矩阵运算规则及MATLAB实例............................-10-3.2.2行列式...............................................-12-3.2.3矩阵的秩和矩阵求逆...................................-12-3.2.4条件数—衡量奇异程度的量.............................-12-3.2.5用矩阵“除法”解线性方程.............................-13-4Matlab编程方法及实例............................................-13-4.1Matlab中的行阶梯法解线性方程..............................-13-4.1.1线性方程的Matlab表示方法............................-13-4.1.2基于Matlab的高斯消元及实例..........................-15-4.1.3MATLAB中的行阶梯生成函数.............................-17-4.1.4解欠定方程组实例.....................................-18-4.2Matlab中的矩阵运算法解线性方程............................-20-4.2.1矩阵运算规则的matlab实例............................-20-4.2.2初等变换乘子矩阵的生成及MATLAB实例..................-22-4.2.3行列式的Matlab实例..................................-26-4.2.4矩阵求逆实例.........................................-27-4.2.5矩阵“除法”解欠定方程实例...........................-28-结论..........................................................-30-参考文献.......................................................-31-1前言1.1国内外研究现状线性方程组求解这个数学领域,国内外数学学家对此的研究非常广泛,也为这个课题做出了许多贡献,在科技和学术日益进步的今天,数学已经与我们的生活息息相关,影响着社会的进程和科技的发展。我们大学所学的的线性代数方程组的基础理论和求解方法,几乎都源于著名国内外数学学家的研究成果,在他们的著作中有所收录。而在实际的生活中,我们需要确认所研究的线性方程组,并对这个目标作出细致的研究和分析,我们重点研究的对象就是这些线性代数方程组中的环节。线性代数方程组的求解方法基本分为两个大类,直接求解方法和迭代求解方法:直接法就是在舍入误差为零的预设情况下,通过有限次的计算,就可以直接得出线性代数方程组精确解的方法,例如高斯消元法,这是最基础的消元法,在求解低阶线性方程组上有很好的效果,可以更好的求解稠密矩阵,还有其他消元法也同样在求解线性方程组上十分有效,近些年来直接法获得了很大的研究进展,特别是在求解带有较大稀疏矩阵的方程组上有很好的效果。迭代法是从一个初始向量开始,一步步逐渐逼近,依照固定的计算迭代公式,从而构建出向量的无穷序列,这个的极限则是线性方程组最精确解,通过有限次运算不-3-能得到精确解。在数学发展历史上,迭代法是由牛顿起先研究提出的;在1940年,绍司威尔通过研究创立了松弛法,这也属于迭代法的范畴;R.弗莱彻等多名数学学家在20世纪60年代发现并创造出了共轭梯度法。迭代法在数学原理上就是通过不同的迭代过程,一步步逐渐求解出线性代数方程组的精确解,迭代法所具备的优势是:依赖的计算机存储单位数量少、程序构成上较简洁、初始的系数矩阵在求解过程中保持不变;但是在收敛性是会相对较差,同样收敛速度也会偏慢,这是迭代法的缺点。迭代法在求解大型稀疏矩阵的方程组上有很好的效果,也是此类求解的重要方法,目前利用迭代法求解的科研方向已经趋于成熟,不过在怎样让它适用于新体系下的类型,从而得到更优的性能提速上还需要更深层次的研究。1.2课题的研究意义在代数学中,线性代数作为一个重要的构成部分,被广泛使用在科研学术的各个领域中,其中的关键课题之一就是解决线性代数方程组的求解问题。线性代数方程组的求解作为计算方法中的基础组成部分,在研究数值的求解和计算领域始终是十分热门的课题。由于计算机的局限性,导致了计算机只能识别线性化的求解问题,所以大多数的科学领域的问题,都需要转化为求解线性方程组。由此可见,线性方程组的求解就在计算机及数学科学领域有着极其重要的地位。而在高等数学中,对于求解非线性方程组或是微分方程数值解这类的数学课题通常也转变成求解线性代数方程组这样的课题。大学的线性代数的课本里只给出了关于如何使用克拉默法则(RulesCramer')和使用增广矩阵来构成初等行(列)变换,对线性代数方程组进行求解,本文将利用行阶梯法、矩阵运算法等线性代数求解方法,通过atlabM编程来研究线性方程组在计算机上的求解方法。1.3本文所完成的工作本文从数学角度分析并举出了两种线性代数的求解方法,分别为行阶梯法求解线性代数方程组和矩阵运算法求解线性代数方程组,两种求解方式使用的方法不同;同时,从Matlab编程的角度列举了两种求解方法在Matlab中的不同程序实例,通过实例和代码及过程展示了行阶梯法和矩阵运算法是如何在Matlab中实现的,利用Matlab工具大大减少了线性代数方程组运算所需要的人为工作,利用计算机及编程语言解决了复杂的数学运算过程。-4-2预备知识2.1线性方程组的定义形如.qypypyp,qypypyp,qypypypsnsn22s11s2nn22221211nn1212111(2.1)的方程组的叫做线性方程组.方程组中,nyyy21,表示n个未知数,s是方程的总数量,njsipij2,1,2,1称为方程组的系数,sjqj2,1称为常数项;系数ijp的第一个指标i表示它在个第i方程,第二个指标j表示它是jx的系数.常记为QPy.其中snssnnpppppppppP212222111211,sqqqQ21如果线性方程组的右边全部是零项,那么线性方程组就称作齐次线性方程组;如果线性方程组的右边不全都是零项,那么线性方程组就称作非齐次线性方程组.2.2线性方程组有解判别定理定理2.2.1线性方程组.qypypyp,qypypyp,qypypypsnsn22s11s2nn22221211nn1212111有解的充分必要条件是它的系数矩阵-5-snssnnpppppppppP212222111211与它的增广矩阵ssnssnnqqqpppppppppP21212222111211有相同的秩.证明:不妨先引入向量ssnnnnssqqqQpppPpppPpppP2121222122121111,,,,(2.2)于是定理中的线性方程组就可以写成QyPyPyPnn2211(2.3)在这里,要想让此线性方程组有解,必须满足的充分必要条件是向量Q可以由向量组nPPP,,,21线性表示,定理证明过程如下:必要性假如该线性方程组有解,那也就是说Q向量是nPPP,,,21向量
本文标题:线性代数方程组的求解与Matlab编程
链接地址:https://www.777doc.com/doc-7800793 .html