【国科大——矩阵分析与应用】LU分解

这篇具有很好参考价值的文章主要介绍了【国科大——矩阵分析与应用】LU分解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

LU分解

LU分解是旨在将某个矩阵表示为两个或多个矩阵的乘积。

LU分解是将矩阵表示为 A A A= L L L U U U,其中 L L L 矩阵 代表Lower Triangular(下三角矩阵) U U U 矩阵 代表Upper Triangular(上三角矩阵)。形象一点就相当于写为 A = ◣ ∗ ◥ A=◣*◥ A=

LU分解步骤

1. 求解U矩阵

先求U矩阵,再求L矩阵。

A X = b AX=b AX=b是一个非奇异系统,那么高斯消元法将A化简为一个上三角矩阵。

例如: A x = b A x=b Ax=b
A = [ − 5 3 4 10 − 8 − 9 15 1 2 ] A= \begin{bmatrix} -5& 3&4 \\ 10 & -8 &-9\\ 15&1&2\end{bmatrix} A= 51015381492
经过高斯消元得到
[ − 5 3 4 10 − 8 − 9 15 1 2 ] ( R 2 + 2 R 1 , R 3 + 3 R 1 ) → [ − 5 3 4 0 − 2 − 1 0 10 14 ] ( R 3 + 5 R 2 ) → [ − 5 3 4 0 − 2 − 1 0 0 9 ] \begin{bmatrix} -5& 3&4 \\ 10 & -8 &-9\\ 15&1&2\end{bmatrix}(R_2+2R_1,R_3+3R_1) →\begin{bmatrix} -5& 3&4 \\ 0 & -2&-1\\ 0&10&14\end{bmatrix}(R_3 +5R_2)→ \begin{bmatrix} -5& 3&4 \\ 0 & -2&-1\\ 0&0&9\end{bmatrix} 51015381492 (R2+2R1,R3+3R1) 50032104114 (R3+5R2) 500320419
所以, U = [ − 5 3 4 0 − 2 − 1 0 0 9 ] U=\begin{bmatrix} -5& 3&4 \\ 0 & -2&-1\\ 0&0&9\end{bmatrix} U= 500320419

2. 求解L矩阵

L矩阵的下三角位置为,进行U分解时,消去某位置所乘系数的 相反数
L = [ 1 0 0 − 2 1 0 − 3 − 5 1 ] L=\begin{bmatrix} 1& 0&0 \\ -2 & 1&0\\ -3&-5&1\end{bmatrix} L= 123015001
− 2 和 − 3 分别为 ( R 2 + 2 R 1 , R 3 + 3 R 1 ) 中 2 和 3 的相反数。 -2和-3分别 为(R_2+2R_1,R_3+3R_1)中2和3的相反数。 23分别为(R2+2R1,R3+3R1)23的相反数。
− 5 为 ( R 3 + 5 R 2 ) 中 5 的相反数。 -5为(R_3 +5R_2)中5的相反数。 5(R3+5R2)5的相反数。

3. 验证

A = L U = [ 1 0 0 − 2 1 0 − 3 − 5 1 ] [ − 5 3 4 0 − 2 − 1 0 0 9 ] = [ − 5 3 4 10 − 8 − 9 15 1 2 ] A=LU=\begin{bmatrix} 1& 0&0 \\ -2 & 1&0\\ -3&-5&1\end{bmatrix} \begin{bmatrix} -5& 3&4 \\ 0 & -2&-1\\ 0&0&9\end{bmatrix}= \begin{bmatrix} -5& 3&4 \\ 10 & -8 &-9\\ 15&1&2\end{bmatrix} A=LU= 123015001 500320419 = 51015381492

4. 用途

A x = b 可以写成 L ( U x ) = b 和 U x = y Ax=b可以写成L(Ux)=b和Ux=y Ax=b可以写成L(Ux)=bUx=y,即先求解 L ( y ) = b L(y)=b L(y)=b得到 y y y,再求解 ( U x ) = y (Ux)=y (Ux)=y得到 x x x,因为矩阵 L L L U U U都是三角矩阵,所以求解上述两个方程比直接求解 A x = b Ax=b Ax=b要简单。

L ( y ) = b L(y)=b L(y)=b
[ 1 0 0 2 1 0 3 4 1 ] [ y 1 y 2 y 3 ] = [ 12 24 12 ] ⇒ [ y 1 y 2 y 3 ] = [ 12 0 − 24 ] \begin{bmatrix} 1& 0&0 \\ 2 & 1&0\\ 3&4&1\end{bmatrix} \begin{bmatrix} y_1\\y_2\\y_3\end{bmatrix}= \begin{bmatrix} 12\\24\\12\end{bmatrix}\Rightarrow \begin{bmatrix} y_1\\y_2\\y_3\end{bmatrix}=\begin{bmatrix} 12\\0\\-24\end{bmatrix} 123014001 y1y2y3 = 122412 y1y2y3 = 12024

( U x ) = y (Ux)=y (Ux)=y
[ 2 2 2 0 3 3 0 0 4 ] [ x 1 x 2 x 3 ] = [ 12 0 − 24 ] ⇒ [ x 1 x 2 x 3 ] = [ 6 6 − 6 ] \begin{bmatrix} 2& 2&2 \\ 0 & 3&3\\ 0&0&4\end{bmatrix}\begin{bmatrix} x_1\\x_2\\x_3\end{bmatrix}=\begin{bmatrix} 12\\0\\-24\end{bmatrix}\Rightarrow\begin{bmatrix} x_1\\x_2\\x_3\end{bmatrix}=\begin{bmatrix} 6\\6\\-6\end{bmatrix} 200230234 x1x2x3 = 12024 x1x2x3 = 666

部分主元法

部分主元消去法多了一个把最大的值调到主元位置的操作,可以提高计算精度。一般需要使用关联系数矩阵 P A = L U PA=LU PA=LU

例如:
A = [ 1 2 − 3 − 4 4 8 12 − 8 2 3 2 1 − 3 − 1 1 − 4 ] A=\begin{bmatrix} 1& 2&-3&-4 \\ 4 &8&12&-8\\2&3&2&1\\-3&-1&1&-4\end{bmatrix} A= 14232831312214814

1. 加关联矩阵,找主元

进行行初等变换,找主元。
[ A ∣ p ] = [ 1 2 − 3 − 4 4 8 12 − 8 2 3 2 1 − 3 − 1 1 − 4 1 2 3 4 ] → [ 4 8 12 − 8 1 2 − 3 − 4 2 3 2 1 − 3 − 1 1 − 4 2 1 3 4 ] \begin{bmatrix} A|p \end{bmatrix}= \left [ \begin{array}{c:c} \begin{matrix} 1& 2&-3&-4 \\ 4 &8&12&-8\\2&3&2&1\\-3&-1&1&-4\end{matrix}& \begin{matrix}1\\2\\3\\4\end{matrix} \end{array} \right ]→ \left [ \begin{array}{c:c} \begin{matrix} 4 &8&12&-8\\1& 2&-3&-4 \\ 2&3&2&1\\-3&-1&1&-4\end{matrix}& \begin{matrix}2\\1\\3\\4\end{matrix} \end{array} \right ] [Ap]= 142328313122148141234 412382311232184142134

2. 进行LU分解

强烈建议:每次进行初等行变换时,将系数的相反数提前写出,因为会受到初等行变换(交换两行)的影响。
[ A ∣ p ] = [ 1 2 − 3 − 4 4 8 12 − 8 2 3 2 1 − 3 − 1 1 − 4 1 2 3 4 ] → [ 4 8 12 − 8 1 2 − 3 − 4 2 3 2 1 − 3 − 1 1 − 4 2 1 3 4 ] → [ 4 8 12 − 8 1 4 0 − 6 − 6 1 2 − 1 − 4 5 − 3 4 5 10 − 10 2 1 3 4 ] \begin{bmatrix} A|p \end{bmatrix}= \left [ \begin{array}{c:c} \begin{matrix} 1& 2&-3&-4 \\ 4 &8&12&-8\\2&3&2&1\\-3&-1&1&-4\end{matrix}& \begin{matrix}1\\2\\3\\4\end{matrix} \end{array} \right ]→ \left [ \begin{array}{c:c} \begin{matrix} 4 &8&12&-8\\1& 2&-3&-4 \\ 2&3&2&1\\-3&-1&1&-4\end{matrix}& \begin{matrix}2\\1\\3\\4\end{matrix} \end{array} \right ]→ \left [ \begin{array}{c:c} \begin{matrix} 4 &8&12&-8\\\frac{1}{4}& 0&-6&-6 \\ \frac{1}{2}&-1&-4&5\\\frac{-3}{4}&5&10&-10\end{matrix}& \begin{matrix}2\\1\\3\\4\end{matrix} \end{array} \right ] [Ap]= 142328313122148141234 412382311232184142134 44121438015126410865102134
lu分解法怎么求l和u,课在国科大

3. 计算 A x = b Ax=b Ax=b

A x = b 可以写成 L ( U x ) = b 和 U x = y Ax=b可以写成L(Ux)=b和Ux=y Ax=b可以写成L(Ux)=bUx=y,通过先求 y y y,再求 x x x文章来源地址https://www.toymoban.com/news/detail-726830.html

到了这里,关于【国科大——矩阵分析与应用】LU分解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数值分析——三角分解法(LU分解法)C++

    从例题着手,求解方程组: 10x1+20x2+20x3+50x4=200 50x1+40x2+10x3+10x4=250 30x1+10x2+40x3+20x4=210 20x1+40x2+40x3+40x4=340 根据方程组可以得到系数矩阵Aij[4][4], 通过矩阵A的元素进行LU分解;由Ax=b,从题干得到b[4]矩阵。现在已知了A、b矩阵,再通过LU分解法的递推公式计算出L U矩阵各个元素。 注意

    2024年02月09日
    浏览(43)
  • 第三章,矩阵,07-用初等变换求逆矩阵、矩阵的LU分解

    玩转线性代数(19)初等矩阵与初等变换的相关应用的笔记,例见原文 已知: A r ∼ F A^r sim F A r ∼ F ,求可逆阵 P P P ,使 P A = F PA = F P A = F ( F F F 为 A A A 的行最简形) 方法:利用初等行变换,将矩阵A左边所乘初等矩阵相乘,从而得到可逆矩阵P. 步骤: (1)对矩阵A进行l次初等

    2024年02月13日
    浏览(45)
  • MIT - 线性代数-LU_LDU分解|单位矩阵

    U为消元结果(行变换),L为行变换矩阵的逆矩阵 D为主元(Pivot)A的主对角线元素,在这里为2、3,U为对D做列变换使其得到LU中的U 为什么要写成A=LU而不是E21A=U呢?因为A=LU中L只包含行变换信息,E21A=U还有额外的数字 2×2 2 3×3 3×2=6 4×4 4×3×2=24 结论:单位矩阵的逆=转置矩阵(

    2024年01月23日
    浏览(48)
  • C语言——利用矩阵LU分解法求逆、行列式

    本章介绍了LU分解法,以及如何利用LU分解法求逆、行列式,针对每个公式、原理、代码进行了详细介绍,希望可以给大家带来帮助。 LU分解法与高斯法求逆一样,可以进行较高维数的矩阵运算(可计算万维及以上,但是精度不能保证,并且占有内存大,高维矩阵需要进行分块

    2024年02月03日
    浏览(43)
  • 线性代数 --- LU分解(Gauss消元法的矩阵表示)

                     首先, LU分解实际上就是用矩阵的形式来记录的高斯消元的过程 。其中,对矩阵A进行高斯消元后的结果为矩阵U,是LU分解后的两个三角矩阵中其中之一。U是一个上三角矩阵,U就是上三角矩阵upper triangle的首字母的大写。         高斯消元的每一步都

    2024年02月02日
    浏览(52)
  • Matlab | Lab4——用LU 分解法、 Jacobi 迭代、 Gauss-Seidel 迭代 解线性病态方程组(系数矩阵为Hilbert矩阵)

    考虑线性方程组Hx=b,其中H为n阶Hilbert矩阵,即 通过先给 定解 (例如取x的各个分量为1),再计算出右端向量b的办法给出一个精确解已知的问题. (1)分别编写Doolittle LU 分解法、 Jacobi 迭代、 Gauss-Seidel 迭代的一般程序; (2) 取阶数n=6,分别用 LU 分解法、 Jacobi 迭代、 Gauss-S

    2024年02月11日
    浏览(42)
  • LU分解(C++)

    LU分解是一种重要的数值线性代数技术, 用于解决线性方程组和矩阵求逆等问题. 在科学工程领域, 经常需要解决形如 A x = b Ax = b A x = b 的线性方程组, 其中 A A A 是系数矩阵, x x x 是未知向量, b b b 是已知向量. LU分解是一种将系数矩阵 A A A 分解为一个下三角矩阵 L L L 和一个上三

    2024年01月16日
    浏览(36)
  • Matlab中求解线性方程组——高斯消元法、LU分解法、QR分解法、SVD分解法、迭代法等

    MATLAB迭代的三种方式以及相关案例举例 MATLAB矩阵的分解函数与案例举例 MATLAB当中线性方程组、不定方程组、奇异方程组、超定方程组的介绍 MATLAB语句实现方阵性质的验证 MATLAB绘图函数的相关介绍——海底测量、二维与三维图形绘制 MATLAB求函数极限的简单介绍 文章目录 前言

    2024年02月08日
    浏览(66)
  • 跨境平台做测评、采退、Lu卡、lu货要怎么做安全?

    大家好,我是珑哥测评,今天和大家聊聊比较小众的圈子,也就是测评衍生出来的分支,采购和退款。因为最近也有很多客户咨询这个问题,由于沃尔玛风控升级了,很多客户下不成功的问题。 大家都知道无论是做测评还是做采购退款或者撸货撸卡都知道给每个账号配置安全

    2024年02月13日
    浏览(28)
  • 数值分析·学习 | 解线性方程组的直接方法(高斯消去法以及LU求解)matlab实现

    目录 一、前言: 二、算法描述: 三、实现代码: 1、高斯消去法: 2、高斯消去法-列主元消去法: 3、LU分解: 4、求逆矩阵: 四、总结: 个人学习内容分享 1、高斯消去法:         设有线性方程组         或写为矩阵形式

    2024年02月05日
    浏览(79)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包