(完整word版)线性方程组的直接解法及matlab的实现

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

本科毕业论文
(2010 届)
题目线性方程组的直接解法及matlab的实现学院数学与信息工程学院
专业数学与应用数学
班级2006级数学1 班
学号0604010127
学生姓名胡婷婷
指导教师王洁
完成日期2010年5月
摘要
随着科技技术的发展及人类对自然界的不断探索模拟。

在自然科学和工程问题中的很多问题的解决常常归结为线性代数问题!
本文的主要内容是对线性方程组求解方法的探讨,主要介绍了四种求解线性方程组的方法,第一种是教科书上常见的消元法,我们称之为基本法。

第二种方法是标准上三角形求解法,即将增广矩阵经过初等变换后化成标准上三角形,然后求解.它改进了一般教科书上的常见方法,与常见方法比较有如下优点:1)规范了自由未知量的选取;2)只用矩阵运算;3)减少了计算量.第三种方法是对特定的方程组(系数矩阵A为n阶对称正定矩阵,且A的顺序主子式均不为零。

)的求解方法进行描述,并且为这种线性方程的求解提供了固定的公式化的方法。

第四种方法是对现在实际问题中常常会遇到的系数矩阵为三对角矩阵的方程组的求解方法。

同时给出这几种方法的数值解法(matlab程序),由于运用电脑软件求解,所以必须考虑计算方法的时间、空间上的效率以及算法的数值稳定性问题,所以针对不同类型的线性方程组有不同的解法.但是,基本的方法可以归结为两大类,即直接法和迭代法.
关键词
高斯消去法;三角分解法;乔莱斯基分解法;追赶法
Abstract
Systems of linear equations are associated with many problems in engineering and scinence ,as well as with applications of mathematics to the social sciences and the quantitative study of business and economic problems.
The main content of this article is the method for solving linear equations,we introduce four methods for solving linear equations in this paper。

The first is the elimination method which is commonly found in textbooks, and we call the Basic Law. The second method is Standard on the triangle Solution,that first change Augmented matrix into standards in primary triangle,and then solving。

It improves the general textbook on common methods, compared with the common method has the following advantages:1)Specification of the free choice of unknowns; 2)Only matrix operations;3) Reduce the computation。

The third method describes a way to solve a Specific equations(N coefficient matrix A is symmetric positive definite matrix, and A are not zero—order principal minor), And for this linear equation provides a fixed formulaic approach. The fourth method is to present practical problems often encountered in the coefficient matrix is tridiagonal matrix method for solving the equations. These methods are given numerical solution of (matlab program), As the use of computer software to solve, it is necessary to consider ways of computing time and space efficiency and numerical stability of algorithms, Therefore,different types of linear equations have a different solution. However,the basic method can be classified into two categories,namely direct methods and iterative methods.
Key words
Gaussian elimination;Triangular decomposition; Cholesky decomposition
method; Thomas algorithm
目录
1。

引言 (1)
2.相关知识 (2)
2。

1 向量和矩阵 (2)
2.2 特殊矩阵 (3)
3.问题叙述 (3)
4.问题分析 (4)
4.1高斯分解法 (4)
4。

2三角分解法 (6)
4。

3乔莱斯基分解法 (6)
4.4追赶法 (7)
5。

举例说明与总结 (9)
5。

1举例说明 (9)
5.1.1高斯分解的matlab程序方法 (9)
5。

1。

2三角分解法的matlab程序方法 (10)
5.1.3乔莱斯基分解法的matlab程序方法 (11)
5.1。

4追赶法的matlab程序方法 (13)
5.2总结 (14)
参考文献 (16)
谢辞 (17)
线性方程组的直接解法及matlab的实现
Direct solution of linear equations and matlab implementation
数学与信息工程学院数学与应用数学专业
胡婷婷
指导教师:王洁
1。

引言
随着科技技术的发展及人类对自然界的不断探索模拟.在自然科学和工程问题中的很多问题的解决常常归结为线性代数问题!例如电学中的网络问题,用最小二乘法求实验数据拟合问题(如大地测量数据处理),解非线性方程组问题,用差分法或有限元法解常微分方程、偏微分方程边值问题等最终都归结于解线性代数方程组。

从实际数据来看,这些方程组的系数矩阵大致分为两种,一种是低阶稠密矩阵(阶数不超过150).另一种是大型稀疏矩阵(矩阵阶数高且零元素较多).
所以,现在我们需要对求线性方程组的方法进行探究,以便能够找到一些简便的方法来加以应用!本文主要就线性方程组的直接解法予以讨论。

线性方程组是线性代数的主要内容,包括线性方程组有解性的判定、消元法解线性方程组和线性方程组解的结构. 它与矩阵、向量的内容密切相关,与矩阵、向量组相关的许多重要结论都是线性方程组有关结论的应用和推广. 如:一个向量是否可以由一个向量组线性表示、表示形式是否唯一往往与非齐次线性方程组是否有解、有唯一解还是无穷多解是等价的;一个向量组是否线性相关与齐次线性方程组是否有非零解是等价的等等.而且随着现代工业的发展,线性方程组的应用出现在各个领域,伴随着大量方程和多未知数的出现,例如电学中的网络问题,用最小二乘法求实验数据拟合问题(如大地测量数据处理),解非线性方程组问题,用差分法或有限元法解常微分方程、偏微分方程边值问题等最终都归结于解线性代数方程组.所以寻找简便
而且准确的求解方法就显得十分重要而且具有现实意义.因此对线性方程组解法的研究就显得十分必要.
从实际数据来看,这些方程组的系数矩阵大致分为两种,一种是低阶稠密矩阵(阶数不超过150).另一种是大型稀疏矩阵(矩阵阶数高且零元素较多)。

本论文的主要内容是对线性方程组求解方法的探讨,主要介绍了四种求解线性方程组的方法,第一种是教科书上常见的消元法,我们称之为基本法。

第二种方法是标准上三角形求解法,即将增广矩阵经过初等变换后化成标准上三角形,然后求解.它改进了一般教科书上的常见方法,与常见方法比较有如下优点:1)规范了自由未知量的选取;2)只用矩阵运算;3)减少了计算量。

第三种方法是对特定的方程组(系数矩阵A 为n 阶对称正定矩阵,且A 的顺序主子式均不为零。

)的求解方法进行描述,并且为这种线性方程的求解提供了固定的公式化的方法。

第四种方法是对现在实际问题中常常会遇到的系数矩阵为三对角矩阵的方程组的求解方法。

同时给出这几种方法的数值解法(matlab 程序),由于运用电脑软件求解,所以必须考虑方法的计算时间和空间效率以及算法的数值稳定性问题,所以针对不同类型的线性方程组有不同的解法。

但是,基本的方法可以归结为两大类,即直接法和迭代法。

本文主要介绍的直接法,包括Gauss 消去法和它的变形——直接三角形法.以及特定方程组的解法乔莱斯基分解法、追赶法。

和这几种方法运用计算机求解线性方程组的数值计算方法.
2.相关知识
2。

1 向量和矩阵
用R n m ⨯表示全部n m ⨯实矩阵的向量空间,C n m ⨯表示全部n m ⨯复矩阵的向量空间。

⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡==⇔∈⨯mn m m n n ij n m a a a a a a a a a a A A R 212222111211)((称为m 行n 列矩阵). []T
n n x x x x R x 21=⇔∈(称为n 维列向量)
[]
n a a a A 21
= ,其中i a 为A 的第i 列。

同理 ⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎣⎡=T m T T b b b A 21,其中T i b 为A 的第i 行。

矩阵基本运算:
(1)矩阵加法
)),,.(,n m n m n m ij ij ij R C R B R A b a c B A C ⨯⨯⨯∈∈∈+=+=其中.
(2)矩阵与标量的乘法
ij ij a c A C αα==,。

(3)矩阵与矩阵的乘法
)
,,(,1p m p n n m n k kj ik ij R C R B R A b a c AB C ⨯⨯⨯=∈∈∈==∑。

(4)单位矩阵
[]n n n R e e e I ⨯∈= 21 ,其中
[].
,,2,1,0,,0,1,0,0n k e T
k ==
2.2 特殊矩阵
设n n ij R a A ⨯∈=][,则有 A 为:
(1)对角矩阵 如果当j i ≠时,0=ij a ;
(2)三对角矩阵 如果当01=>-ij a j i 时,;
(3)上三角矩阵 如果当0=>ij a j i 时,;
(4)对称矩阵 如果T A A =;
(5)正定矩阵 如果设A 是n 阶实系数对称矩阵, 如果对任何非零向量
[]n x x X ,,1 =都有0>AX X T ,就称A 正定.
3.问题叙述
比较下列用直接法解线性代数方程组的方法.设有线性代数方程组 m n mn m m n n n n b x a x a x a b x a x a x a b x a x a x a =+++=+++=+++
22112
22221211
1212111
或写成矩阵形式
⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡m n mn m m n n b b b x x x a a a a a a a a a 2121212222111211,简记为 b AX =. 分别用高斯消元法,三角分解法,乔莱斯基分解法,追赶法来对方程b AX =进行求解.
4.问题分析
该方程组(例)的矩阵系数A 为非奇异矩阵.因此我们可以通过,高斯消元法,三角分解法,乔来斯基分解法,追赶法来进行求解.下面我就对该问题非别使用这几种方法来解决问题。

4。

1.高斯消元法
对方程组
m n mn m m n n n n b x a x a x a b x a x a x a b x a x a x a =+++=+++=+++
22112
212221211
1212111 (1)
首先检查1x 的系数,如果1x 的系数12111,,,m a a a 全为零,那么方程组(1)对1x 的系数没有任何限制,1x 就可以任意取,而方程组(1)可看作m x x ,,2 的方程组来解。

如果1
x 的系数不全为零,那么利用矩阵的初等
变换,分别把第一个方程的11
1a a i -倍加到第i 个方程(i =2,…,m )。

于是方程(1)就变成 m
n mn m n n n n b x a x a b x a x a b x a x a x a ''22'2
'21'222'1
1212111=++=++=+++
(2)
其中 .,,2;,,2,111
1'n j m i a a a a a j i ij ij ==⋅-= 对(2)再按照上面的考虑进行变换,并且这样一步步做下去,最后就得到一个阶梯形方程组,不妨设所得的方程组为
000
001
2
222221
11212111====++=++++=++++++
r r
n rn r rr n n r r n n r r d d x c x c d x c x c x c d x c x c x c x c (3)
其中.,,2,1,0r i c ii =≠方程组(3)中的“0=0"这样的恒等式可能不出现,也可能出现,这样去掉它们也不影响(3)的解,而且(1)与(3)是同解的。

如(3)中有方程10+=r d ,而01≠+r d .这时不管n x x ,,1 取什么值都不能使它成为等式.故(3)无解,因而(1)无解。

当1+r d 是零或(3)中根本没有“0=0”的方程时,分两种情况:
1)r=n.这时阶梯性方程组为
n
n nn n n r r n n r r d x c d x c x c x c d x c x c x c x c ==++++=+++++ 2
222221
11212111 (4)
其中n i c ii ,,2,1,0 =≠.由最后一个方程开始,11,,,x x x n n -的值就可以逐个地唯一地决定了。

在这个情形,方程组(4),也就是方程组(1)有唯一的解。

2) r 〈n 。

这时阶梯形方程组为
r
n rn r r r r rr n n r r r r n n r r r r d x c x c x c d x c x c x c x c d x c x c x c x c x c =++=++++=+++++++++++
11,2
211,222221
111,11212111
其中r i c ii ,,2,1,0 =≠。

把它改写成
n
rn r r r r r rr n
n r r r r n
n r r r r x c x c d x c x c x c d x c x c x c x c d x c x c x c --=--=++--=+++++++++
11,211,222222111,111212111 (5)
由此可见,任给n r x x ,,1 +一组值,就唯一地定出r x x x ,,,21 的值,也就是定出方程组(5)的一个解.一般地,由(5)我们可以把r x x x ,,,21 通过n r x x ,,1 +表示出来,这样一组表达式称为方程组(1)的一般解,而n r x x ,,1 +称为一组自由未知量.
3) 应该容易得到,n r >情形是不可能出现的。

4.2.三角分解法(LU 分解)
回顾高斯消元法的实质,是经过一系列的初等变换,将方阵A 分解为下三角矩阵L 与上三角矩阵U 的乘积
A=LU ,
这里 , ⎥⎥
⎥⎥⎦⎤⎢⎢⎢
⎢⎣⎡=1112
21
m mi
l l l L ,⎥⎥
⎥⎥⎦

⎢⎢⎢
⎢⎣
⎡=mn n n u u u u u u U 222
11211 . 对系数矩阵一旦实现了这种三角分解(称为LU 分解),那么此方程组就可写为等价形式
.,.b Ly y Ux b LUx ===则令于是,容易先解出y ,再求出x.
4.3。

乔莱斯基分解法
若A 为n 阶对称正定矩阵,切A 得顺序主子式均不为零。

则A 可以唯一分解为 T LDL A = 其中L 为单位下三角矩阵,D 为对角矩阵。

⎥⎥⎥⎦

⎢⎢⎢⎣⎡=n d d D 1 ,).,,3,2(,0/,0111n i D D d D d i i i =>>>>-
于是 2
12
1
1
1
1D
D d d d d d d D n n n =⎥⎥⎥⎦⎤⎢⎢⎢⎣
⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣
⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=
则此时系数矩阵A 可写成
T T T
T
L L L D LD L D LD LDL A 1
12
1212
121
))((====
其中2
11LD L = 为下三角矩阵,即:
⎥⎥
⎥⎥⎦
⎤⎢
⎢⎢⎢⎣
⎡⎥⎥⎥⎥⎦⎤⎢⎢⎢
⎢⎣⎡=nn n n nn n n l l l l l l l l l l l l A
222121112
1
2221
11,其中).,,2,1(0n i l ii
=>由矩阵乘法及
时),
当k j l jk <=(0得ij jj jk j k ik jk n
k ik ij l l l l l l a +==∑∑-==1
1
1
, 于是得到解对称正定方程组b Ax =的计算公式: 对于n j ,,2,1 =有
);
,,1.(/)(.,
)(.1
1
2
1
1
1
2n j i l l l a l ②l a l ①jj j k jk ik ij ij j k jk jj jj +=-=-=∑∑-=-=
求解b Ax =,即求解两个三角形方程组: (1)Ly=b ,求y; (2).,x y x L T 求=
).
1,,1,(/)(.).
,,2,1(/)(.1
1
1 -=-
==-=∑∑+=-=n n i l x l
b x ④n i l y l b y ③ii
k n
i k ki
i i ii
i k k ik i i
4.4.追赶法
设三对角矩阵:
⎥⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢
⎢⎢⎣
⎡=---n n
n n n b a c b a c b a c b A 111
222
11。

考虑f Ax =,其中T n T n f f f f x x x x ][,][2121 ==。

且有:
.
0||||)();1,,3,2(0,|,|||||)(;
0||||)(11>>-=≠+≥>>n n i i i i i a b c n i c a c a b b c b a
将三角矩阵A 分解为LU A =(<1>),
其中⎥⎥

⎥⎥⎥⎦

⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎦⎤
⎢⎢⎢
⎢⎢⎢⎣
⎡=---1111,12
1
,
11
2
21
n n n
n n u u u U l a l a l a l L
比较<1〉式两端的元素可得:
),,3,2(,,111111n i l u a b u l c l b i i i i i i i =+===----
于是有
)1,,2,1(,,11
1
111-=-==
=----n i u a b l l u u b l i i i i i i i i 求解方程组f Ax =可转变为先求解f Ly =,再求解y Ux =,其中T n y y y y ),,,(21 =. 比较f Ly =和y Ux =的元素可得
)
,,3,2(11
11n i f y l y a f
y l i
i i i i ==+=-
n
n i i i i y x n i y x u x =-==++)
1,,2,1(1
由此可得解三对角方程组f Ax =的算法如下:
)
1,,2,1(,
),
,,3,2(/)(,
,/,
/,1
1111111111-=-===-=-====------n i x u y x y x n i l y a f y u a b l l c u l f y b l i i i i n n i i i i i i i i i i i i
5。

举例说明与总结
5.1举例说明
5.1。

1高斯分解法的matlab 程序方法
高斯消去法求解方程组⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦
⎤⎢⎢⎢
⎢⎣⎡12344321
33212221
11114321x x x x 。

根据高斯消去法,编制matlab 程序如下
首先建立一个M-file 文件,保存在work 中,文件名为magauss.m function x=magauss(A ,b,flag) %用途:Gauss 消去法解线性方程组Ax=b
%格式:x=guass(A ,b ,flag ),A 为系数矩阵,b 为右端项,若flag=0,则不显示中间过程, %否则显示中间过程,默认为0,x 为解向量
if nargin〈3,flag=0;end
n=length(b);
%消元
for k=1:(n—1)
m=A(k+1:n,k)/A(k,k);
A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-m*A(k,k+1:n);
b(k+1:n)=b(k+1:n)—m*b(k);
A(k+1:n,k)=zeros(n—k,1);
if flag~=0,Ab=[A,b],end
end
%回代
x=zeros(n,1);
x(n)=b(n)/A(n,n)
for k=n-1:—1:1
x(k)=(b(k)-A(k,k+1:n)*x(k+1:n))/A(k,k);
end
再在工作窗口输入:
>〉A=[1 1 1 1;1 2 2 2;1 2 3 3;1 2 3 4];
b=[4 3 2 1]';
〉> x=magauss(A,b);x’
得计算结果
x =
5 0 0 —1
5。

1。

2三角分解法的matlab 程序方法
三角分解法解方程组⎥⎥

⎥⎥
⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡------181641411441314231313324312111341254321x x x x x 。

三角分解法的Matlab 程序
function [x,l,u ]=maLU (A ,b) %用途:用LU 分解法解方程组Ax=b
%格式: [x ,l,u ]=maLU (A ,b ) A 为系数矩阵,b 为右端向量,返回解向量,l 返回下三角矩阵,u 返回上三角矩阵
%LU 分解
n=length(b);u=zeros(n,n) l=eye(n,n );u(1,:)=A (1,:); l(2:n,1)=A (2:n ,1)/u (1,1); for k=2:n
u(k,k :n )=A(k ,k :n)—l (k ,1:k-1)*u (1:k —1,k :n );
l(k+1:n,k )=(A(k+1:n,k)-l (k+1:n ,1:k —1)*u (1:k —1,k))/u (k ,k ); end
%解下三角方程组Ly=b y=zeros (n ,1); y (1)=b(1); for k=2:n
y(k)=b(k)-l(k,1:k-1)*y(1:k-1);
end
%解上三角方程组Ux=y
x=zeros(n,1);
x(n)=y(n)/u(n,n);
for k=n-1:-1:1
x(k)=(y(k)—u(k,k+1:n)*x(k+1:n))/u(k,k);
end
在工作窗口输入
>> A=[2 —1 4 -3 1;—1 1 2 1 3;4 2 3 3 —1;-3 1 3 2 4;1 3 -1 4 4];
〉〉b=[11 14 4 16 18]’;
〉〉[x,L,U]=maLU(A,b);x'
得计算结果
x =
1.0000 2。

0000 1。

0000 —1。

0000 4。

0000
5.1.3乔莱斯基分解法的matlab程序方法
5.1.2中的方程组的系数矩阵是对称正定的,所以可以运用乔莱斯基分解法来求解.乔莱斯基分解法Matlab程序
function [x,l,d]=machol(A,b)
%用途:用cholesky分解法解方程组Ax=b
%LDL'分解
n=length(b);d=zeros(1,n);
l=eye(n,n);
d(1)=A(1,1);
l(2:n,1)=A(2:n,1)/d(1);
d(2)=A(2,2)—l(2,1)*l(2,1)*d(1);
for i=3:n
for j=2:(i-1)
s=0;
for k=1:(j—1) s=s+d(k)*l(i,k)*l(j,k);end
l(i,j)=(A(i,j)—s)/d(j);
end
s=0;
for j=1:(i-1)s=s+d(j)*l(i,j)*l(i,j)end
d(i)=A(i,i)-s
end
%求解下三角方程组Ly=b(向前消去法)
y=zeros(n,1);
y(1)=b(1);
for i=2:n
y(i)=b(i)-l(i,1:i—1)*y([1:i—1]);
end
%求解上三角方程组Dz=y
for i=1:n z(i)=y(i)/d(i);end
%求解上三角方程组L’x=z(回代法)
ll=l';x=zeros (n,1);x (n)=z(n); for i=(n —1):—1:1
x (i )=z (i)—ll(i ,i+1:n )*x(i+1:n ); end x=x';
在工作窗口输入
>> A=[2 -1 4 —3 1;—1 1 2 1 3;4 2 3 3 —1;-3 1 3 2 4;1 3 —1 4 4]; >> b=[11 14 4 16 18]'; 〉> [x ,l,d]=machol(A,b) 得计算结果 x =
1.0000
2.0000 1.0000 —1。

0000 4.0000
5.1.4追赶法的matlab 程序方法
解方程组⎥⎥⎥⎥⎥
⎥⎦⎤⎢
⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡--------0000121000121000121000121000
1254321x x x x x ,
记⎥⎥

⎥⎥
⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡--------=21000121000121000121000
12A ,⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=00001f .
追赶法的Mtlab 程序
function x=machase (a ,b ,c,f) %用途:追赶法解三对角方程组Ax=f
%格式:x=machase(a,b,c,f) a为次下对角线元素向量,b为主对角线元素向量, %c为次上对角线元素向量,f为右端向量,为返回向量
%追赶法
n=length(a);
for k=2:n
b(k)=b(k)-a(k)/b(k—1)*c(k-1);
f(k)=f(k)-a(k)/b(k)*f(k-1);
end
x(n)=f(n)/b(n);
for k=n-1:—1:1
x(k)=(f(k)-c(k)*x(k+1))/b(k)
end
在工作窗口输入
〉〉a=—1*ones(5,1);b=2*ones(5,1);c=-1*ones(5,1);
f=[1 0 0 0 0]’;
〉〉x=machase(a,b,c,f)
输出结果
x =
0 0 0 0。

5422 0.2778
x =
0 0 0.7817 0。

5422 0.2778
x =
0 0。

9656 0.7817 0.5422 0。

2778
x =
0.9828 0.9656 0。

7817 0。

5422 0.2778
x =
0。

9828 0.9656 0。

7817 0.5422 0.2778
5.2.总结
通过对实际方程组的求解,我们可以很容易的用Gauss 消元法及LU 分解法的matlab 程序求解!由于该方程组的系数矩阵不是正定的,所以不能用乔莱斯基分解法求解!通过观察,很容易正定这个方程组的系数矩阵是是呈现带状分布的,而且0元素很多,这种形式的系数矩阵在科学与工程计算中会经常遇到.但在实际问题
中的矩阵都非常的庞大,我们知道用gauss 消去法和LU 分解法求n 阶的方程组都需要大约3/3n 个乘除法,
若我们假定n=410,则需作121033.0 次乘除法,用一台每秒作810次乘除法的计算机求解,约费时一个小时,
但是这样的时间也是不够快的.若是用乔莱斯基分解法,则计算量约为6/3n ,大约为前两种方法计算量的一
半。

但乔莱斯基分解法只能用于系数矩阵是对称正定的方程组!但对于系数矩阵为三对角的方程组来说,可以运用更简单的方法来求解,即追赶法,因为追赶法计算时忽略了除三对角线的元素外的其他零元素,从而使运算的时间大大缩短,运算效率也有显著的提高!所以在求解方程组时,我可以根据方程组系数矩阵的特点选用最有效的方法来进行求解.
参考文献
[1]马昌凤,林伟川。

现代数值计算方法MATLAB版[M]北京:科学出版社,2008:79—88。

[2]张凯院,徐仲.数值代数—2版[M]北京:科学出版社,2006.33-54.
[3] 李庆扬,王能超,易大义.数值分析—4版[M]。

北京:清华大学出版社,2008:161-193。

[4] 陈传淼.科学计算概论[M]北京:科学出版社,2007:1-15 。

[5] 北京大学数学系几何与代数教研室前代数小组.高等代数—3版[M]北京高等教育出版
社,2003。

9:61-83,105—111,226-231.
[6]卢学飞,徐仲。

求三对角方程组的新算法[J].西安:数学的实践与认识,2007 ,37(3):112-118.
[7] 宫野,王友年等.块三对角矩阵方程的追赶法及其应用[J]大连理工大学学报,1997,17(4):406—409.
[8]马昌凤,林伟川.现代数值计算方法:matlab版[M].北京:科学出版社,2008:35—57,205-216。

[9]同济大学数学教研室编。

线性代数[M].北京:高等教育出版社,2000。

[10][日]有马哲,浅枝阳著,胡师度,周世武译。

线性代数讲解[M]。

成都:四川人民出版社,1985.
[11]杨士俊。

线性方程组的解法[J].杭州师范学院学报(社会科学版),1994,(3):99-105。

[12] 姜建飞,胡良剑,唐俭。

数值分析及其matlab实验[M].北京:科学出版社,2004。

[13] 蔡大用,白峰杉.高等数值分析[M]。

北京:清华大学出版社,1997。

[14] 弓爱芳,郭明月。

线性方程组各种解法的讨论与思考[J].高等函授学报(自然科学版),2005,(5):41—44.[15] 关治,陆金甫.数值分析基础[M]。

北京:高等教育出版社,1998.
[16]徐成贤,徐宗本。

矩阵分析[M].西安:西北工业大学出版社,1991
[17]陈芳,陆全.求解分块三对角线性方程组的一种新算法[J].工程数学学报,2004,21(8):35-40.
[18]David Kincaid and Ward Cheney。

Numerical Mathematics and Computing.Brooks/Cole Publishing Co。

,Pacific Grove,CA,fourth edition,1999。

ISBN.0—534—35184-0.
[19]James F。

Epperson。

An Introduction to Numerical Methods and Analysis. Wiley, 2001。

ISBN.
0-471-31647—4。

[20]Christian Rakotonirina Institut Sup´erieur de Technologie d’Antananarivo,ON THE CHOLESKY METHODIST-T,BP 8122,MadagascarJune 9,2009
[21] http://scicomp.ucsd。

edu/∼spav/pub/numas。

pdf
谢辞
这篇论文得以完成,除了自己的一些努力外,还要谢谢我的论文指导老王洁讲师,如果不是她在关键的时候给予我帮助指导,我想这篇论文也不会这么容易的完成. 她严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;她循循善诱的教导和灵动特别的思路给了我灵动的启迪.
在她的关心与督促下,我了解了论文何为论,如何论,也让我们了解了论文写作的要点在哪里!在她的指导与鼓励下,我认真的完成了论文写作的准备工作!在她的督促下,我终于完成了这篇论文。

在她的信心检查与教导下,我最终完成了对论文细节的修订.所以,在这里,我要诚挚的谢谢我的指导老师!
在这里,我还要感谢这四年里教导我们的老师.是你们让我学到了新的知识,是你们让我发现数学字符的美妙,是你们让我对自己及所学专业有了深刻的认识!
感谢我的室友们,当我只身从千里之外来到这个陌生的城市,是你们让我感受到了这个环境中的温馨。

谢谢你们和我共同维系着彼此之间真挚的友情,维系着寝室那份家的融洽。

四年了,仿佛就在昨天。

四年里,我们没有红过脸,没有吵过嘴,没有发生上大学前所担心的任何不开心的事情。

最后,我还要感谢一下这个社会的科技.科技让我能较轻松的找到自己想要的文献资料,科技让我能够跟很多人交流心得,这都为我论文的写作奠定了基石。

相关文档
最新文档