一、矩阵$AB$的逆

$(AB)^{-1}=B^{-1}A^{-1}$,顺序正好相反

二、$A=LU$

 如矩阵:

$\left[\begin{array}{ll}{2} & {1} \\ {8} & {7}\end{array}\right]$ =>消元=>$\left[\begin{array}{ll}{2} & {1} \\ {0} & {3}\end{array}\right]$

 按照我们在第二讲所知,原始矩阵借助$E_{21}$可以实现矩阵的消元,即$E_{21}$ * $A$ = $U$

$\left[\begin{array}{ll}{1} & {0} \\ {-4} & {1}\end{array}\right] * \left[\begin{array}{ll}{2} & {1} \\ {8} & {7}\end{array}\right]$ = $\left[\begin{array}{ll}{2} & {1} \\ {0} & {3}\end{array}\right]$

注意:这里是2 * 2 矩阵,所以只需要一个初等矩阵相乘即可,若是更大的方阵,则每次消元都需要初等矩阵左乘

 而我们知道$A=LU$,那么这个$L$是什么呢?

$A=LU$

$E_{21}A=U$

 第二个式子左右同时乘以$E_{21} ^{-1}$:

$A=E_{21} ^{-1}U$

 所以这个$L$就是$E_{21} ^{-1}$,初等矩阵的逆矩阵好求,就是初等矩阵变一下符号而已(仅仅因为这里是2*2矩阵,如果3*3或者更大的矩阵,就不是这么简单了):

$L$=$E_{21} ^{-1}$=$\left[\begin{array}{ll}{1} & {0} \\ {4} & {1}\end{array}\right]$

 这里只是以简单的2*2矩阵为例进行了讲解,$L$和$U$矩阵表示了下三角矩阵和上三角矩阵,过程如下:

$\left[\begin{array}{ll}{2} & {1} \\ {8} & {7}\end{array}\right]=\left[\begin{array}{ll}{1} & {0} \\ {4} & {1}\end{array}\right]\left[\begin{array}{ll}{2} & {1} \\ {0} & {3}\end{array}\right]$

即:$A = LU$

有时候会把主元摘出来:$A = LDU$

$\left[\begin{array}{ll}{2} & {1} \\ {8} & {7}\end{array}\right] = \left[\begin{array}{ll}{1} & {0} \\ {4} & {1}\end{array}\right]\left[\begin{array}{ll}{2} & {0} \\ {0} & {3}\end{array}\right]\left[\begin{array}{ll}{1} & {1/2} \\ {0} & {1}\end{array}\right]$

 我们不能只停留在简单的2 * 2矩阵上,下面我们来处理更大的矩阵,比如3 * 3 矩阵:

$E_{32} E_{31} E_{21} A=U$(消元过程假设不需要进行行交换)

$A= E_{21}^{-1} E_{31}^{-1} E_{32}^{-1} U$

所以:$L= E_{21}^{-1} E_{31}^{-1} E_{32}^{-1}$

 实例:

  上面的求$L$的过程看起来很麻烦,先要计算三个消元矩阵,然后计算他们的逆,反顺序相乘,其实不然

  对于初等矩阵,之前讲到过,它的逆只要把变换再还回去就是,比如矩阵:

$\left[\begin{array}{lll}{1} & {0} & {0} \\ {2} & {1} & {0} \\ {0} & {0} & {1}\end{array}\right]$

  表示将某矩阵的第一行乘2加到第二行上(如果用它右乘某矩阵的话),那么这个操作的逆操作就是从第二行减去2倍的第一行就是了,所以它的逆矩阵就是:

$\left[\begin{array}{ccc}{1} & {0} & {0} \\ {-2} & {1} & {0} \\ {0} & {0} & {1}\end{array}\right]$

三、后半节需要再理解一下

04-A的LU分解的更多相关文章

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

    线性代数中的一个核心思想就是矩阵分解,既将一个复杂的矩阵分解为更简单的矩阵的乘积.常见的有如下分解: LU分解:A=LU,A是m×n矩阵,L是m×m下三角矩阵,U是m×n阶梯形矩阵 QR分解: 秩分解 ...

  2. LU分解,Javascript代码

    ///A 为矩阵,这里写成一维数组,如 [1],[1,2,3,4] function GetLU(a) { var n = a.length;//矩阵的总数据数目 var s = Math.sqrt( ...

  3. matlab实现高斯消去法、LU分解

    朴素高斯消去法: function x = GauElim(n, A, b) if nargin < 2 for i = 1 : 1 : n for j = 1 : 1 : n A(i, j) ...

  4. LU分解(2)

    接着上次LU分解的讲解,这次给出使用不同的计算LU分解的方法,这种方法称为基于GaxPy的计算方法.这里需要了解lapapck中的一些函数.lapack中有一个函数名为gaxpy,所对应的矩阵计算公式 ...

  5. LU分解(1)

    1/6 LU 分解          LU 分解可以写成A = LU,这里的L代表下三角矩阵,U代表上三角矩阵.对应的matlab代码如下: function[L, U] =zlu(A) % ZLU ...

  6. MATLAB矩阵的LU分解及在解线性方程组中的应用

    作者:凯鲁嘎吉 - 博客园http://www.cnblogs.com/kailugaji/ 三.实验程序 五.解答(按如下顺序提交电子版) 1.(程序) (1)LU分解源程序: function [ ...

  7. 线性代数笔记10——矩阵的LU分解

    在线性代数中, LU分解(LU Decomposition)是矩阵分解的一种,可以将一个矩阵分解为一个单位下三角矩阵和一个上三角矩阵的乘积(有时是它们和一个置换矩阵的乘积).LU分解主要应用在数值分析 ...

  8. 矩阵分解---QR正交分解,LU分解

    相关概念: 正交矩阵:若一个方阵其行与列皆为正交的单位向量,则该矩阵为正交矩阵,且该矩阵的转置和其逆相等.两个向量正交的意思是两个向量的内积为 0 正定矩阵:如果对于所有的非零实系数向量x ,都有 x ...

  9. 计算方法 -- 解线性方程组直接法(LU分解、列主元高斯消元、追赶法)

    #include <iostream> #include <cstdio> #include <algorithm> #include <cstdlib> ...

  10. 矩阵LU分解分块算法实现

    本文主要描述实现LU分解算法过程中遇到的问题及解决方案,并给出了全部源代码. 1. 什么是LU分解? 矩阵的LU分解源于线性方程组的高斯消元过程.对于一个含有N个变量的N个线性方程组,总可以用高斯消去 ...

随机推荐

  1. Linux系统设置开机自动启动ORACLE数据库服务

    具体方法如下: 1. 修改oratab (root用户执行) /etc/oratab的配置格式如下: $ORACLE_SID:$ORACLE_HOME:Y 2. 测试dbstart, dbstop(o ...

  2. [BZOJ1059]:[ZJOI2007]矩阵游戏(二分图匹配)

    题目传送门 题目描述 小Q是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏——矩阵游戏.矩阵游戏在一个N×N黑白方阵进行(如同国际象棋一般,只是颜色是随意的).每次可以对该矩阵进行两种 ...

  3. python数据类型之 元祖、列表字典

    Python中元祖,列表,字典   Python中有3种內建的数据结构:列表.元祖和字典: 1.列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目. 列表中的项目应该包 ...

  4. JAVA 第十一周学习总结

    20175308 2018-2019-2 <Java程序设计>第十一周学习总结 教材学习内容总结 13.1 URL类: URL类是java.net包中的一个类,用URL创建的对象可以获取U ...

  5. TP3.2写分页

    用TP3.2写分页 手册上说的好难懂,我自己去网上找资料 ,现在整理一下,以后可能会用: 在Think下面有Page.class.php类: 我在这个下面放了一个function.php的(算是类吧又 ...

  6. The file is inaccessible to Server.

    ArcGIS Unable to Start serviceserver安装后,启动服务失败,报错信息如下:Unable to Start service. Error (Server object  ...

  7. 在VSCode中开启ESLint风格审查

    最近一直在学习开发一个VUE项目,几乎没有前端基础摸爬滚打,就一边摸索HTML,JS,CSS一边模仿着已有代码开发,也还算能学到东西. VSCode确实还不错,很轻量.在刚开始学写vue的时候,后台总 ...

  8. 2018.03.27 pandas duplicated 和 replace 使用

    #.duplicated / .replace import numpy as np import pandas as pd s = pd.Series([1,1,1,1,1,2,3,3,3,4,4, ...

  9. python3 基本数据类型_1

    不得已,要学习python3了,之前了解到py2与py3有很大不同,不过学起来才能感觉到,比如print. 不过,同样的代码,可以使用py3,py2执行,结果也相似,大家可以看看. 大概因为初学,还未 ...

  10. 密码学 - MD5 - 生成|加密|解密|相关工具

    生成MD5 解密 工具 - findmyhash使用方法:-h 直接跟hash值 -f 指定hash文件 -g 通过google查找hash 加密方式识别工具 hash-identifier 支持识别 ...