fortran求解雷诺方程_Jacobi迭代法解线性方程组

当线性方程组的规模比较大时,采用高斯消元法需要太多时间。这时就要采用迭代法求解方程组了。高斯消元法是一个O(n^3)的浮点运算的有限序列,在经过有限步计算之后理论上得到的是精确解(无舍入误差时)。而迭代法在经过有限步迭代之后一般不产生精确解,迭代法在计算过程中逐渐减小误差,当误差小于容许值时停止迭代计算。方程组的系数矩阵是严格对角占优矩阵时,迭代总是收敛的。

●Jacobi迭代法

对于方程组3u+v=5,u+2v=5,将其改写为如下的形式

cae587b2dd7e44f0351179b03b906524.png

由于方程组的系数矩阵是严格对角占优矩阵时,迭代一定收敛。使用初值[u0,v0]=[0,0]开始迭代,以下是迭代过程:

20c366b889f0613990d4ec56e2d57929.png

继续迭代过程最终会收敛到解[1,2].这个迭代过程就是Jacobi迭代。

对于方程组u+2v=5,3u+v=5,由于方程组的系数矩阵不是严格对角占优矩阵时,因此迭代不收敛。来看迭代过程:

2be07d32da18d4168243eb25e22d052d.png

设D表示系数矩阵A 的主对角部分,L表示A的主对角线下方部分,U表示A的主对角线上方部分。则A=D+L+U,AX=b可改写为

3940cba8a67dfff93bf1030c832bdd5a.png

对于上面的方程组3u+v=5,u+2v=5,写成矩阵形式

d0f1372c77d99574581fbb9a5f69261f.png

迭代格式为

70ee6ec411c674e0b3bdf52beb3a7bd2.png

这与之前的迭代格式是一致的。

Fortran源代码

88a22d9bd20b61b654034ca554ffb2d2.png

☆☆☆  往期相关  ☆☆☆

严格对角占优矩阵

高斯消去法解线性方程组及MATLAB实现

高斯消去法的算法改进

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值