仿真平台与工具应用实践
Jacobi迭代法求解线性方程组
(
实 验 报 告
院 系:
专业班级:
姓 名: 学 号: 指导老师:
一、 实验目的
熟悉Jacobi迭代法原理;
]
学习使用Jacobi迭代法求解线性方程组;
编程实现该方法;
二、 实验内容
应用Jacobi迭代法解如下线性方程组:
?4x1?x2?x3?7??7?4x1?8x2?x3??21,要求计算精度为10 ??2x?x?5x?15123?\\
三、 实验过程
(1)、算法理论
Jacobi迭代格式的引出是依据迭代法的基本思想:构造一个向量系列
?X???,使其收敛至某个极限Xn*,则X*就是要求的方程组的准确解。
Jacobi迭代
?a11x1?a12x2???a1nxn?b1?ax?ax???ax?b?2222nn2将方程组: ?211 (1)
????an1x1?an2x2???annxn?bn
?x1?b12x2?b13x3???b1nxn?g1?x?bx?bx???bx?g?22112332nn2在假设aii?0,改写成? (2)
???xn?bn1x1?bn2x2???bn?n?1?xn?1?gn?如果引用系数矩阵
?a11?a1n??0?b1n??x1??b1??g1??B???????,b????,g????, A???X?, 及向量????????????????xn???bn???gn???an1?ann???bn1?0??方程组(1)和(2)分别可写为:AX?b及X?BX?g,这样就得到了jacobi迭代格式Xk?1?BXk?g0用jacobi迭代解方程组AX?b时,就可任意取初值
X0带入迭代可知式Xk?1?BXk?g,然后求limXk。但是,n比较大的时候,
k??写方程组(1)和(2)是很麻烦的,如果直接由A,b能直接得到B,g就是矩阵与向量的运算了,那么如何得到B,g呢实际上,如果引进非奇异对角矩阵
?a11?0?? ?aii?0? D??0?????0?ann??-
将A分解成:A?A?D?D,要求AX?b的解,实质上就有
AX?(A?D)X?DX,而D是非奇异的,所以D?1存在,DX?AX?(D?A)X,从而有X?D?1AX?D?1b,我们在这里不妨令B?I?D?1A,g?D?1b就得到
jacobi迭代格式:Xk?1?BXk?g