- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《计算方法(B)》上机实习报告
(matlab 语言)
班级:硕526
姓名:姜彤
学号:3105032029
2005-12-02
实习题目
Gauss消去法,列主元GUASS小区消去法解线性方程组Ax=b,其中
3
-5
6
4
-2
_3
8 _
_11
1
1
-9
15
1
-9
2
2
2
-1
7
5
-1
6
11
29
A =
-1
1
3
2
7
-1
-2
9
4
3
1
-7
2
1
1
5
2
9
—8
11
-1
-4
-1
8
_7
2
-1
2
7
-1
9 _
_25
算法组织
Gauss消去法
Gauss消去是最古老的数值方法之一,在计算机出现之后,它仍是一个很有用的 方法,因为在计算机上很容易实现,为使算法实现方便,把矩阵存放在一个二维数 组中,消去的第一步产生的元夠⑴可放入ay⑹中对应位置,因为以后运算过程中 au⑹不再有用,第一列下面的n?l个元都是0,没必要把这些0都存入,故这些位 置可用来存放数1订(i=2, 3,…,n)o对以后的消去各步,类似的存储安排也同样 适用,这样可以不用另外的存储空间而完成消去过程,回代过程只需按照式:
xn= 3 n(n-1)/ a
xk=[0kk-1)-SMHnakj(k-|)xj]akk(k-1)
逐个计算未知数Xk即可。
消去过程:
1 ? For k=l,2,…,n?l
If a kk=0 then 输出错误信息;stop
Fori二k+l,k+2,…,n
a ik/a kk- a ik
2. 2 For j二k+1, k+2, ???, n
2. 2. 1 a ij-a ika kj- a ij
1.2.3 3i-aikPk-3i
消去过程完成,回代开始
P n/ a nn^Xn
Bk—S
2. 2 For j二k+1, k+2,…,n
2.2.2」 S-a kjXj-S
2.2.4 S/ukk—Xk
列主元Gauss消去法:
在数值计算中最常见的是求解线性联立方程组。求解线性联立方程组的一个很 简单的方法是Gauss消去法,但是Gauss消去法若能顺利地进行,必须在消去的每 个过程中每一步都满足条件akk(k-l)^0.否则,Gauss消去法将无法进行下去,因为算 法Gauss屮的将出现用零去除一个数。所以,我们必须对Gauss消去法进行改造, 这样,就产生了列主元消去法。就是在Gauss消去过程屮,适当交换方程的顺序对 保证消去过程中能顺利进行及计算解的精度都是必要的。交换的原则是使akk(k,)(i =k,k+l,…,n)中,绝对值最大的一个换到(k,k)位置而成为第k步消去的主元。 具体的算法如下:
(1)消去过程
该过程包含旷1步,具体过程如下:
For k=l, 2,???,n-l
a max a
1找满足丨% |= /1 \aik |的下标1. 2
1. 2 If then输出错误信息:stop
3 For j=l,2,…,n
1. 3. 1 MO %
1. 4 几 O0
1. 5 For I=k+l,k+2,…,n
5 | aik / % = aik
1. 5. 2 For j二k+l,k+2,???,n
15 2 1 一 aik aKi O aij
15 3 0厂 aikPk =* A
(2)回代过程
1
2 For k=n-l,n-2, … ,1
(0人?—工仙勺)/他—
2. 1 +
三.源程序
? Gauss 消去(文件:GAUSS.m)
a=[3 -5 64 -2 -3 8
1 -9 15 1 -9 2
2-175-1611
? 1 1 3 2 7 -1 ?2
4 3 1 ?7 2 1 1
9-811-1-4-1
7 2 ? 1 2 7 ?1 9];
b=[11 2 29 9 5 8 25]:
n=7;
for k=1:
if a(k,k)==0
disp wrong!:
else
for i=k+1:n
a(i,k)=a(i,k)/a(k,k);
for j=k+1: n a(i,j)=a(i,j)-a(i,k)*a(k,j);
end
b(i)=b(i)-a(i,k)*b(k);
end
end
%方程系数矩阵%消元过程
%方程系数矩阵
%消元过程
for j=k+1: n
s=s-a(k,j)*x(j);
end
x(k)=s/a(k,k);
end
x
?列主元消去: (文件:GAUSSPP.m)
a=[3 ?5 6 4 ?2 ?3 8
1 ? 9 15 1 ?9 2
2-175 6 门
? 1 1 3 2 7 -1 ?2
4 3 1 ?7 2
9-811-1-4-1
72? 12 7-1 9];
b=[11 2 29 9 5 8 25]:
n=7;
for k=1:n-1
u=k;
for 匸k:n
if
文档评论(0)