使用LU分解求解线性方程组

有如下方程组

,当矩阵 A 各列向量互不相关时, 方程组有位移解,可以使用消元法求解,具体如下:

使用消元矩阵将 A 变成上三角矩阵

使用消元矩阵作用于向量 b,得到向量 c,

Ax=b 消元后变为

,即

, 由于

为上三角矩阵, 使用回带法即可求解方程组。

对矩阵

做如下运算

。在消元过程中,已知

,如何求解

呢?

表示将矩阵A的第二行乘以 1 再加上矩阵A的第三行得到矩阵B的第三行,矩阵B的第一二行于矩阵A的第一二行保持一致。根据语义,

表示将矩阵B的第二行乘以 -1 再加上矩阵B的第三行得到矩阵A的第三行,矩阵A的第一二行于矩阵B的第一二行保持一致。

通过以上观察,

仅需将对角线下元素相加即可得到,

,在矩阵消元过程中,对消元系数取反,然后放在相应的位置即构成了

,也就是 L 。同时,消元法记录下了 U,则有 Ux=c, b=Lc。

由于 L 为下三角矩阵,根据 Lc=b, 可求解 c;U 为上三角矩阵, 根据 Ux=c 可求解 x。

在消元过程中,如果遇到主元位置上为 0 情况时,需要使用行变换矩阵使消元过程得以继续,PAx=Pb,P为行变换矩阵,记录矩阵 L,U,P,可实现LU分解,过程如下:

有方程组

,对矩阵

进行LU分解:

1)

2)

3)由于

为 0,需要交换2,3行,则有:

,交换L矩阵中小于第二列下变换因子位置,即交换

元素位置;

4)由于 Lc=Pb, 可计算出 c:

5)由于 Ux=c,可计算出 x:

相关推荐
生成论实验室22 分钟前
《事件关系阴阳博弈动力学:识势应势之道》第四篇:降U动力学——认知确定度的自驱演化
人工智能·科技·神经网络·算法·架构
AI科技星35 分钟前
全域数学·72分册:场计算机卷【乖乖数学】
算法·机器学习·数学建模·数据挖掘·量子计算
科研前沿1 小时前
镜像孪生VS视频孪生核心技术产品核心优势
大数据·人工智能·算法·重构·空间计算
水蓝烟雨1 小时前
1931. 用三种不同颜色为网格涂色
算法·leetcode
晨曦夜月2 小时前
map与unordered_map区别
算法·哈希算法
图码2 小时前
如何用多种方法判断字符串是否为回文?
开发语言·数据结构·c++·算法·阿里云·线性回归·数字雕刻
handler012 小时前
Linux 内核剖析:进程优先级、上下文切换与 O(1) 调度算法
linux·运维·c语言·开发语言·c++·笔记·算法
minglie13 小时前
实数列的常用递推模式
算法
我是大聪明.3 小时前
CUDA矩阵乘法优化:共享内存分块与Warp级执行机制深度解析
人工智能·深度学习·线性代数·机器学习·矩阵
代码小书生3 小时前
math,一个基础的 Python 库!
人工智能·python·算法