- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
雅可比迭代法的C编程实现-search
Jacobi 迭代法求线性方程组的解―――楼竞 1
雅可比迭代法的C++编程实现
算法的数学说明:
n
设有方程组∑a xj = bi (i= 1,2,…,n)记为
ij
j 1
Ax=b, (1 式)
A 为非奇异矩阵且aij ≠0 (i= 1,2,…,n )。将A 分裂为A=D-L-U ,其中
D =
0
a21 0
a31 a32 0
L =-
. . .
. . .
an1 an2 0
U =-
将(1 式)第i 个方程(i= 1,2,…,n )用aij 去除再移项,得到等价方程组
Jacobi 迭代法求线性方程组的解―――楼竞 2
1 n
= ( -∑a x ) (i= 1,2,…,n), (2 式)
xi bi ij j
aii j 1
j ≠i
简记为x=Bx+f,其中
B=I -D −1 A= D −1 (L+U),f= D −1 b 。
对方程组(2 式)使用迭代法,得到解(1 式)的雅可比 (Jacobi )迭代公式
(0) (0) (0) T
=( ,…, ) (初始向量);
x x1 xn
(k+1) 1 n (k)
xi = ( bi -∑aij xj ) , (3 式)
aii j 1
j ≠i
(k) (k) (k) T (k)
其中, =( ,…, ) 为第 k 次迭代向量,设 已经算出,由(3 式)可
x x1 xn x
计算下一次迭代向量x(k+1) (k=0,1,2,…;i= 1,2,…,n )。
迭代公式 (3 式)的矩阵形式为
x(0) 初始向量,
x(k+1) = Bx(k) + f , (4 式)
其中B 为雅可比方法迭代矩阵,初始向量用高斯列主元素消去法求解。
程序源代码如下:
/*
假设有如下方程组:
Ax=b
用Jacobi 迭代法求解方程组的解
方法:将A 分裂为A=D-L-U ,等价的迭代方程组
文档评论(0)