- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1、编程实现以下科学计算算法,并举一例应用之。 (参考书籍《精
通MALAB科学计算》 ,王正林等著,电子工业出版社,2009
年)
“Gauss-Seidel 迭代法线性方程组求解”
(1)迭代解法的基本思想:
根据给定方程组,设计出一个迭代公式,构造一数组的序列xi0,代入迭代公式,计算出xi1,在代入迭代公式,经过k次迭代运算后得到xik,若xik收敛于某一极限数组xi,则xi就是方程组的近似解。
迭代过程本质上就是计算极限的过程,一般不能得到精确解。但迭代的优点是程序简单,适合大型方程组求解,然而,缺点是要判断迭代是否收敛和收敛速度的问题。
(2)算法说明:
Gauss-Seidel迭代法与简单迭代法类似,只是迭代公式有所改进。
简单迭代法:;
Gauss-Seidel迭代法:;
设方程组Ax=b,其中A和b中的元素都为常数,且A为非奇异,则A分可写成:A=D-L-U。
其中D上网意义同Jacobi迭代法,L为下三角矩阵,U为上三角矩阵,他的迭代公式为:
在MATLAB中编程实现的Gauss-Seidel迭代法函数为:gauseidel。
功能:用Gauss-Seidel迭代求线性方程组ax=b的解。
调用格式:[x,n]=gauseidel(A,b,x0,eps,M).
其中,A为线性方程组的系数矩阵;
b为线性方程组中的常数向量;
x0为迭代初始向量;
eps为解的精度控制(此参数可选);
M为迭代步数控制(此参数可选);
x为线性方程组的解;
n为求出所需精度的解实际迭代步数。
(3)Gauss-Seidel迭代法的MATLAB程序代码如下:
function [x,n]=gauseidel(A,b,x0,eps,M)
%采用Gauss-Seidel迭代法求线性方程组Ax=b的解
%线性方程组的系数矩阵:A
%线性方程组的常数向量:b
%迭代初始向量:x0
%解的精度控制:eps
%迭代步数控制:M
%线性方程组的解:x
%求出所需精度的解实际的迭代步数:n
if nargin ==3
eps=1.0e-6; %eps表示迭代精度
M=200; %M表示迭代步数的限制值
elseif nargin ==4
M=200;
elseif nargin 3
error
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; %n为最终求出解时的迭代步数
if n=M
disp(Warning:迭代次数太多,可能不收敛!);
end
end
(4)进行实例分析:
A=[1.4449 0.7948 0.8801;0.6946 1.9568 0.1730;0.6213 0.5226 1.9797];
b=[1 0 1];
x0=zeros(3,1);
[x,n]=gauseidel(A,b,x0)
x = %输出结果
0.5929
-0.2444
0.3836
n = 11 %输出迭代次数n
(5)运行图以即流程图:
①运行图:
②流程图:
开始最大步数M为200
开始
最大步数M为200
读取数据
读取数据
否nargin==3?
否
nargin==3?
是
是
eps=
eps=10--6 ,最大步数M=200
n=1
n=1
x=G*x0+f
x=G*x0+f
否x0=x;n=n+1
否
x0=x;
n=n+1
norm(x-x0)eps?
是是
是
是
n=200?
n=200?
否
否
输出结果Warning:迭代次数太多,可能不收敛
输出结果
Warning:迭代次数太多,可能不收敛
结束
结束
②例题流程图:
输入系数矩阵A
输入系数矩阵A
输入常数向量b
和初始向量x0
[x,n]=gauseidel(A,b,x0)
输出计算结果
输出迭代次数
一、分析电路:(RC充电电路)
当t0时,开关K位于“1”,电路以达到平衡Uc(0+)=Uc(0-)=-12V, iR2(0-)=3A;
当t0时,ic(0+)=-Uc(0+)/(R2*R3/(R2+R3)),达到稳态后,
您可能关注的文档
最近下载
- BS EN 12350-5-2019 新鲜混凝土试验.第5部分:流动表试验.pdf VIP
- BS EN 12350-4-2019 新鲜混凝土试验.第4部分:密实度.pdf VIP
- BS EN 12350-5-2019 Testing fresh concrete Part 5:Flow table test 新拌混凝土试验第5部分: 流动台试验.pdf
- 颈动脉支架成形术治疗颈动脉狭窄病人的护理.pdf VIP
- 重庆文理学院,校考,中国现当代作家作品选复习题1.doc VIP
- 重庆文理学院,校考,中国现当代作家作品选复习题2.doc VIP
- BS EN 12350-6-2019 Testing fresh concrete Part 6:Density 新浇混凝土试验第6部分: 密度.pdf
- 交叉配血标本采集流程.pptx VIP
- BS EN 12350-2-2019 新鲜混凝土试验.第2部分:塌陷试验.pdf VIP
- 2025年大学校园二手市场调研报告.docx VIP
原创力文档


文档评论(0)