- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
重慶大学数值计算试验作业
存储路径名:C:\Program Files\MATLAB704\work
实验一 线性方程组的数值解法
1.实验目的:
(1)高斯列主元消去法求解线性方程组的过程
(2)熟悉用超松弛迭代法求解线性方程组的过程
(3)设计出相应的算法,编制相应的函数子程序
2.实验内容
分别用高斯列主元消去法、超松弛迭代法求解线性方程组
实验原理
写出本次实验所用算法的算法步骤叙述输出计算结果,结果分析和小结等。auss消元法解如下方程:
解:
直接建立求解该方程的M文件Gauss_line.m,求解程序编制如下:
%求解例题2.2
%高斯列主元消元法求解线性方程组Ax=b
%A为输入矩阵系数,b为方程组右端系数
%方程组的解保存在x变量中
format long;%设置为长格式显示,显示15位小数
A=[2,10,0,-3;-3,-4,-12,13;1,2,3,-4;4,14,9,-13]
b=[10,5,-2,7]
[m,n]=size(A);
%先检查系数正确性
if m~=n
error(矩阵A的行数和列数必须相同);
return;
end
if m~=size(b)
error(b的大小必须和A的行数或A的列数相同);
return;
end
%再检查方程是否存在唯一解
if rank(A)~=rank([A,b])
error(A矩阵的秩和增广矩阵的秩不相同,方程不存在唯一解);
return;
end
c=n+1;
A(:,c)=b; %(增广)
for k=1:n-1
[r,m]=max(abs(A(k:n,k))); %选主元
m=m+k-1; %修正操作行的值
if(A(m,k)~=0)
if(m~=k)
A([k m],:)=A([m k],:); %换行
end
A(k+1:n, k:c)=A(k+1:n, k:c)-(A(k+1:n,k)/ A(k,k))*A(k, k:c); %消去
end
end
x=zeros(length(b),1); %回代求解
x(n)=A(n,c)/A(n,n);
for k=n-1:-1:1
x(k)=(A(k,c)-A(k,k+1:n)*x(k+1:n))/A(k,k);
end
disp(X=);
disp(x);
format short;%设置为默认格式显示,显示5位
运行得到输出结果如下:
A =
2 10 0 -3
-3 -4 -12 13
1 2 3 -4
4 14 9 -13
b =
10
5
-2
7
X=
1.00000000000000
2.00000000000000
3.00000000000000
4.00000000000000
2_SOR法求解
%w=1.45
%方程组系数矩阵
clc;
A=[2,10,0,-3;-3,-4,-12,13;1,2,3,-4;4,14,9,-13]
%方程组右端系数
b=[10,5,-2,7]
w=1.45;
%最大迭代次数
Maxtime=100;
%精度要求
Eps=1E-5;
%以15位小数显示
format long;
n=length(A);
k=0;
%初始迭代值
x=ones(n,1);
y=x;
disp(迭代过程:);
disp(x=);
while 1
y=x;
disp(x);
%计算过程
for i=1:n
s=b(i);
for j=1:n
if j~=i
s=s-A(i,j)*x(j);
end
end
if abs(A(i,i))1E-10 | k=Maxtime
error(已达最大迭代次数或矩阵系数近似为0,无法进行迭代);
return;
end
s=s/A(i,i);
x(i)=(1-w)*x(i)+w*s;
end
if norm(y-x,inf)Eps%达到精度要求退出计算
break;
end
k=k+1;
end
disp(最后迭代结果:);
%最后的结果
X=x
%设为默认显示格式
format short
您可能关注的文档
最近下载
- 武汉市2025届高中毕业生四月调研考试 英语试卷(含答案详解).pdf
- 硕士研究生论文的选题与写作.ppt
- 2019年7月安徽省砀山县事业单位幼儿教师招聘考试《幼儿保教知识与能力》真题试卷(含答案).pdf VIP
- 确保室内空气质量的施工方案与技术措施.pdf
- 中小银行上云趋势研究分析报告 2024.pptx
- 证券从业人员证券投资基金基础知识题库与答案.doc
- 小学家长会英语老师课件.pptx VIP
- 第七单元《红楼梦》薛宝钗、林黛玉人物形象赏析 公开课一等奖创新教案统编版高中语文必修下册.docx VIP
- 最新部编版五年级下册语文单元教材分析(全册) .pdf VIP
- 春季学期《工业控制网络》试题.doc
文档评论(0)