首页 >> 大全

matlab 求解线性方程组之LU分解

2023-06-22 大全 45 作者:考证青年

线性代数中的一个核心思想就是矩阵分解,既将一个复杂的矩阵分解为更简单的矩阵的乘积。常见的有如下分解:

LU分解:A=LU,A是m×n矩阵,L是m×m下三角矩阵,U是m×n阶梯形矩阵

QR分解:

秩分解:A=CD , A是m×n矩阵,C是m×4矩阵,D是4×n矩阵。

奇异值分解:A=UDVT

谱分解:

在求解线性方程组中,一个核心的问题就是矩阵的LU分解,我们将一个矩阵A分解为两个更加简单的矩阵的复合LU,其中L是下三角矩阵,U是阶梯形矩阵。下三角矩阵和上三角矩阵具有非常良好的性质:Lx=y 或者Ux=y 很容易求解。

问题1.对于任意的矩阵A,是否存在LU分解?

定理:如果A行等价于阶梯形矩阵U,那么(EnEn-1......E1)A=U,其中的Ei,i=1,2,.....,n是高斯消去矩阵,他们都是下三角矩阵,并且都可逆。

这个定理告诉我们三件事:

1.并不是所有的矩阵都有LU分解的。

2.A=LU=(EnEn-1......E1)-1U=(E1-1E2-1.....En-1)U。

3.这个定理还给出了求解矩阵A-1的一种方法。

数值算法1.Gauss消去

用Gauss消去法将矩阵A行变换为U:

用Gauss消去矩阵将A行变换为U:

数值算法2.Gauss-

过程和Gauss-基本一致,之不多在选择完最大元之后,将其化为1,这样就可以通过乘以一个倍数来消去其他行了。

选择主元

当对某一列进行Gauss消去时,一般都是选择这一列中绝对值最大的一个元素作为主元,当然这会进行行交换。其好处有一下几点:

1.在Gauss会代的过程中,不会出现除数为0的情况。

2.减少误差传播,这主要是因为乘数小于等于1.

(为何乘数小于等于1,如果选择这一列中绝对值最大的一个元素作为主元,我们假设这个元素是a,那么乘数等于-b/a,此时|b/a|

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了