matlab 矩阵jocobi迭代_线性方程组的迭代解法数值结果分析

纸上得来终觉浅,绝知此事要躬行。

----(宋)陆游

在使用有限差分法的五点格式求解偏微分方程组时,把问题转化为求解数量级从10直到为10^4个未知数的稀疏矩阵的线性方程组,然后使用了Jocobi迭代,G-S迭代,SOR迭代以及CG迭代求解。

不管从程序的运行时间还是结果精度来看,SOR迭代和CG迭代较另外两种迭代法占优,而数值结果显示SOR迭代和CG迭代的收敛速度基本相当(后者稍微占优一点儿),这和理论的推导结果吻合地很好。

从程序使用的内存空间考虑的话,问题变得复杂了。简言之,CG方法依旧胜出,而除了Jacobi迭代法之外的其他迭代方法在处理数量级为10^4个未知数的时候都会遇到out

momery的情况。

综合考虑,在能使用CG方法的情况下(它适用于稀疏矩阵的线性方程组的求解,但是要求线性方程组对应的系数矩阵为对称正定阵,在五点差分格式中,满足该条件且矩阵为稀疏矩阵),首选CG方法。

PS:使用matlab的一点体会,matlab的最重要的一个特点是向量化计算。在使用G-S迭代法求解数量级为10^4个未知数的方程组(此时,方程组对应的系数矩阵为10^8的数量级)时,如果使用其对应的矩阵迭代格式的话,那么要涉及到稀疏矩阵的求逆,就五点差分格式转化的方程组而言,在G-S迭代中涉及的稀疏矩阵的逆却不是稀疏矩阵,由于要存储的数据太多,导致out

momery而使程序无法计算下去。再拿G-S迭代法来看,发现其分量的迭代格式能够大量地节省存储空间,它只需要系数矩阵和常数项的存储信息而不涉及到逆矩阵的计算和存储。不过呢,

原文:http://www.cnblogs.com/liuyc/p/3703693.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值