cholesky分解_线性方程组的解法:对称正定矩阵的Cholesky分解(平方根法)

在科学和工程计算中,经常需要求解形如

的线性方程组,其中
矩阵,称为系数矩阵,
维列向量,称为右端向量,
为待求解的
维列向量,称为解向量。

而科学和工程的实际计算中,经常遇到系数矩阵

为对称正定矩阵的情况。若

为正定阵,则有如下三角阵

使

成立。若
的主对角线元素取正值,则这种分解是唯一的。

将矩阵关系式

直接展开,有

据此可逐行求出矩阵

的元素
,计算公式为

基于矩阵分解式

,对称正定方程组
可归结为两个三角方程组
来求解。由

可顺序计算出

:

而由

可逆序求得

:

由于矩阵分解时公式含有开方运算,所以该算法称为平方根法,又叫Cholesky分解法。

根据上述公式,编写程序即可对方程进行求解:

subroutine 

以上代码的Cholesky分解部分与前文公式基本上一致,很好理解,但引入了一个临时变量temp,用于存储数据。而如果我们将j、k两层循环交换一下位置,再稍微调整一下循环计数器的取值范围,就可以不借助临时变量直接完成分解操作。代码如下:

do 

参考资料:

王能超. 高等学校教材, 数值分析简明教程, (第2版)[M]. 2003.
吴建平, 王正华, 李晓梅. 稀疏线性方程组的高效求解与并行计算[M]. 湖南科学技术出版社, 2004.
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值