线性方程组解法与分析

线性方程组,是线性代数的重要组成部分之一,同时在现实生产生活中也有着广泛的运用。如在软件开发,网络通信,航天航空,交通运输等方面。关于线性方程组的解法,早在中国古代数学名著《九章算术》中已做了比较完整的论述,其中所述的方法实质上,是相当于现代的高斯消元法,高斯消元法是求解线性方程组的基本方法。此外求解线性方程组的解法还有迭代法,LU分解法等。
本文主要讨论线性方程组的几种解法及在现实生活中的应用,和在今后生活中的发展方向。用matlab编写程序,实现线性方程组的求解。比较几种方法的优点和缺点以及联系和区别。M000105
关键词:线性方程组,  matlab,  迭代法,LU 分解法,高斯消元法。
Solution of linear equations and analysis
Linear equation group, is one of the important part of linear algebra. At the same time in the practical production and life has been widely used. As in software development, network communications, aerospace, transportation etc.. Methods of solving linear equations, has done a complete exposition in the early China ancient classics of mathematics "arithmetic in nine sections", The essence of the method, is the modern equivalent of the Gauss elimination method, Gauss elimination method is a basic method for solving linear equations. In addition to solve the linear equations and iterative method, LU decomposition method.
This paper mainly discusses several methods of linear equations and its application in real life, and lives in the future direction of development. With MATLAB programming, to achieve the solution of linear equations. Comparison of several methods have advantages and disadvantages as well as the relation and difference.
Key words:systems of linear equations, matlab,  iterative method, The LU decomposition method ,   Gaussian elimination
目  录                  查看完整请+Q:351916072获取
1引言……………………………………………………………………………….4
1.1线性方程组的现状及解法意义……………...…………….4
1.2线性方程组的趋势与发展方向………...……............…4
2  迭代法求解线性方程组……………………………………………………………5
2.1 迭代法的认识…………………………………………………………………5
2.2迭代法的举例分析………………………………………………………….5
2.2.1 Jacobi迭代法代码……………………………….5
2.2.2Gauss-Seidel迭代法…………………………….........…...6
3  高斯消元法求解线性方程组…………………………………….........…...7
3.1高斯消元法的认识……………………………………………...............7
3.2高斯消元法的举例分析……………………………………..........…...7
3.3高斯消元法的代码分析……………………………………..........…...8
4  LU分解法求解线性方程组…………………………………………………...10
4.1 LU分解法的认识………………………………..............10
4.2 LU分解法的举例分析………………………………………………...10
4.3 LU分解法的程序分析......................................................11
  5  三种算法的优点与缺点比较.......................................................13
6 总结与展望………………………………………………13
7致谢 …………………………………………………….....13
8 参考文献 ………………………………………………....14 
1,1线性方程组的现状及解法意义
从大体上来讲,线性方程组可以分为齐次线性方程组和非其次线性方程组两大部分,线性方程组的解可以分为,有解和无解两大类,齐次线性方程组的结构是只有通解,而非其次线性方程组不仅有通解而且有特解。对于线性方程组解的判定,有多种方法,大多数选择的是根据线性方程组的秩与方程组行或者列的关系,进行判别。这种方法简单易行,便于计算。
线性方程组,是线性代数的重要组成部分之一,同时在现实生产生活中也有着广泛的运用。如在软件开发,网络通信,航天航空,交通运输等方面。在大量的科学与工程实际应用中,经常涉及对大量数据进行处理的问题,线性方程组的辅助作用起到了至关重要的辅助作用,所以大量的科学技术问题,最终往往归结为求线性方程组解的问题。
通过对线性方程组的解法的研究,我们可以更好的利用线性方程组,为我们社会的各个行业提供方便。如果想要提升自己的工作能力,不被现代社会发展潮流所遗弃,必须重视和学好线性方程组的解法。
1.2线性方程组的趋势与发展方向
线性方程组及其解法在各个领域具有重要意义。如电子工程:实际电路分析、模拟电路设计,信号系统线性分析、以及滤波器分析设计等都需要运用线性代数,软件工程方面:如现在风行一时的3D游戏,图像处理,还有任何一部3D电影,大量的后期电脑制作都需要线性代数的数学工具,经济学研究方面亦是如此。
在今后的科技发展史上,线性方程组,必然会扮演着重要的角色。为人类的发展和科技的进步做出巨大贡献。所以本次课题,对我今后的成长有很大的帮助作用。
2  迭代法求解线性方程组
2.1 迭代法的认识
这里所说的迭代法是指将求一组解转换为求一个近似解序列的过程,并用最终的近似解来逼近真实的解,迭代法速度快,非常适合求解大型系数矩阵的方程组,Jacobi迭代法是迭代法的一种,
若系数矩阵A的主对角线元素全不为0,则可将A分解为
   A=D-L-U
D为对角阵,其元素为A的对角线元素,L和U为A的下三角阵和上三角阵。
则线性方程组 Ax=b化为
   Dx=(L+U)x+b
迭代公式为    Dx(k+1)=(L+U)x(k)+b
如果序列{x(k+1)}收敛于x,则x必为方程组的解。
还有另一种重要的迭代法Gauss-Seidel迭代法。
将Jacobi的迭代公式改为    Dx(k+1)=Lx(k+1)+Ux(k)+b
Gauss-Seidel迭代法。用新的分量来代替旧的分量,精确度高。两种方法从本质来说是一种方法,第二种是第一种的变形。
2.2迭代法的举例分析
2.2.1  Jacobi迭代法代码
%jacobi.m%
function [x,n]=jacobi(A,b,x0,eps)
if  nargin==3
    eps=1.0e-6;
elseif  nargin<3
    return;
end
D=diag(diag(A));  L=-tril(A,-1);U=-triu(A,1); B=D\(L+U);
f=D\b;  x=B*x0+f;
n=1;
while  norm(x-x0)>=eps
x0=x;   x=B*x0+f;    n=n+1;
end
举例   >>  A=[4 -1 1;-1 4.25 2.75;1 2.75 3.5];
       >>  b=[13 -9 6]';
       >> [x,n]=Jacobi(A,b,zeros(3,1),1.0e-6)
x =
   -0.1992
   -6.7344
    7.0625
n =
97
2.2.2Gauss-Seidel迭代法

程序代码 
   %GaussSeidel.m%
function [x,n]= GaussSeidel(A,b,x0,eps)
if  nargin==3
    eps=1.0e-6;
elseif  nargin<3
    return;
end
D=diag(diag(A));  L=-tril(A,-1);U=-triu(A,1); G=(D-L )\U;
f=(D-L)\b; 
x=G*x0+f;
n=1;
while  norm(x-x0)>=eps
x0=x;   x=G*x0+f;    n=n+1;
end
>>  A=[4 -1 1;-1 4.25 2.75;1 2.75 3.5];
>>  b=[13 -9 6]';
>>  [x,n]=GaussSeidel(A,b,zeros(3,1),1.0e-6)

x =
   -0.1992
   -6.7344
    7.0625
n =
    52
由此可见两种方法大同小异,后者的精确度更高一些。
3  高斯消元法求解线性方程组
3.1高斯消元法的认识
  该方法以数学家高斯命名, 是线性代数中的一个算法,可用来为线性方程组求解.
高斯消元法可用来找出下列方程组的解:
2x + y - z = 8 (L1)
-3x - y + 2z = -11 (L2)
-2x + y + 2z = -3 (L3)
这个算法的原理是:
首先,要将L1 以下的等式中的x 消除,然后再将L2 以下的等式中的y 消除。这样可使整个方程组变成一个三角形似的格式。之后再将已得出的答案一个个地代入已被简化的等式中的未知数中,就可求出其余的答案了。
查看完整请+Q:351916072获取

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/gdxx/498.html

好棒文