线性代数 --- 为什么LU分解中L矩阵的行列式一定等于正负1?

news2024/10/1 5:37:33

  以下是关于下三角矩阵L的行列式一定等于+-1的一些说明

笔者的一些话(写在最前面):

        这是一篇小文,是我写的关于求解矩阵行列式的一篇文章中的一部分。之所以把这一段专门提溜出来,是因为这一段相对于原文是可以完全独立的,也是因为我自认为这是原文中很精彩的一段论证。为了便于我自己后续翻阅和查找,也是为了给我CSDN文章里面凑数,这才有了这篇文章。

证明:在LU分解中,下三角矩阵L的行列式一定是\pm 1.

在证明之前,我这里先补充几条关于行列式的性质:

性质1:对于三角矩阵而言,不论是上三角矩阵还是下三角矩阵,其行列式的值都等于主对角线上元素的乘积。

        此处引用Gilbert strang的线性代数教科书《introduction to linear algebra》中,第251页处的一段关于矩阵行列式的相应说明:

        截图中第七条性质说:如果矩阵A是一个三角矩阵,则矩阵A的行列式等于其对角线上元素的乘积。

\mathbf{\left | A \right |=a_{11}*a_{22}*...*a_{nn}}

性质2:两个矩阵A,B的积AB的行列式|AB|等于这两个矩阵各自的行列式|A|和|B|的积,即:

\mathbf{\left | AB \right |=\left | A \right |\left | B \right |}

性质3:单位矩阵I的行列式为1。

性质4:对矩阵进行行与行之间的交换后,需要改变原矩阵行列式的正负号。

        在LU分解中,下三角阵L是高斯消元的逆过程,是多个消元矩阵E的逆矩阵E^{-1}的乘积(形如下图中的矩阵)。

        首先,根据上面说的性质1可知,所有消元矩阵E的逆矩阵E^{-1}的行列式等于其对角线上所有元素的乘积。又因为矩阵E^{-1}对角线上元素都是1,所以,E^{-1}的行列式一定等于1。此外,根据性质2,L的行列式等于多个E^{-1}的行列的乘积,所以,L的行列式必然等于1,即:

\left |L \right |=\left | {E_{1}}^{-1}\right |*\left | {E_{2}}^{-1}\right |*\left | {E_{3}}^{-1}\right |*...\left | {E_{n}}^{-1}\right |

        可是,如果对矩阵A进行高斯消元的过程中,遇到对角线上的元素为0的情况,就需要对矩阵进行行交换,则上式就会包含一些置换矩阵:

\left |L \right |=\left | {P_{1}}^{-1}\right |*\left | {E_{1}}^{-1}\right |*\left | {E_{2}}^{-1}\right |*\left | {E_{3}}^{-1}\right |*\left | {E_{4}}^{-1}\right |*\left | {P_{2}}^{-1}\right |...\left | {E_{n}}^{-1}\right |

        这种情况下计算出来的L矩阵可就不一定是标准的下三角矩阵了,比如说下面这个矩阵:

        这样一来就需要对L矩阵进行行交换,把他变成标准的下三角矩阵,以确保他的det等于1。而交换的过程需要用置换矩阵P记录下来,使得原来的L,变成PL(这时的L已经是标准的下三角矩阵了)。因为置换矩阵P只不过是对单位矩阵I进行行交换后的结果,因此,综合性质3性质4可知,置换矩阵P的行列式的值只能是+1或-1。在结合前面得出的L矩阵的行列式一定是1的结论,最终PL的行列式只能是+1或-1。

        因此,当我们基于矩阵A的LU分解计算出L的det后(必然是1),如果高斯消元的过程中进行过行交换,还要再根据行交换的次数(置换矩阵P)去调整det的符号。

事实上,在matlab中自带的计算矩阵行列式的det函数就利用了这一点。

        按照Matlab的官方说明文档,首先,他在计算矩阵的det时先调了lu分解函数,对矩阵进行分解。

注意,matlab的lu分解函数有很多,只是他在计算行列式时,调用的是[L,U]=lu(A)。

        按照他官方文档的说法,分解后的L矩阵和U矩阵中,L矩阵有被置换过,也就不是标准的三角矩阵。这和我们前面提到的,如果消元时进行过行交换的情况是一致的。

        然后,对这个“经过置换的下三角矩阵L”进行行交换,并记录交换过程得到:

\left | PL \right |=\left |P \right |\left | L \right |=\pm 1*1=\pm 1

        最后一步,求出矩阵U(他一定是一个标准的上三角矩阵)中主对角线上所有元素的乘积,然后和前一步的结果相乘,得到矩阵A的行列式:


\left |A \right |=\left |PLU \right |=\left | P \right |\left | L \right |\left | U \right |=(\pm 1)*(1)*\left | U \right |=\pm\left | U \right |

 例子:


(全文完)

作者 --- 松下J27 

 参考文献(鸣谢):

1,https://en.wikipedia.org/wiki/Determinant

2,Determinant of a Matrix

3,矩阵行列式 - MATLAB det- MathWorks 中国

4,线性代数 --- LU分解(Gauss消元法的矩阵表示)_矩阵的lu分解-CSDN博客

5,线性代数 --- Gauss消元的部分主元法和完全主元法_部分选主元高斯matlab-CSDN博客

(配图与本文无关)

版权声明:所有的笔记,可能来自很多不同的网站和说明,在此没法一一列出,如有侵权,请告知,立即删除。欢迎大家转载,但是,如果有人引用或者COPY我的文章,必须在你的文章中注明你所使用的图片或者文字来自于我的文章,否则,侵权必究。 ----松下J27

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1362839.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RocketMQ 投递消息方式以及消息体结构分析:Message、MessageQueueSelector

🔭 嗨,您好 👋 我是 vnjohn,在互联网企业担任 Java 开发,CSDN 优质创作者 📖 推荐专栏:Spring、MySQL、Nacos、Java,后续其他专栏会持续优化更新迭代 🌲文章所在专栏&…

条件竞争之文件上传

一、条件竞争介绍 条件竞争,在程序员日常的Web应用开发中,通常不如其他漏洞受到的关注度高。因为普遍的共识是,条件竞争是不可靠的,大多数时候只能靠代码审计来识别发现,而依赖现有的工具或技术很难在黑盒灰盒中识别并进行攻击。…

精进单元测试技能 —— Pytest断言的艺术!

本篇文章主要是阐述Pytest在断言方面的应用。让大家能够了解和掌握Pytest针对断言设计了多种功能以适应在不同测试场景上使用。 了解断言的基础 在Pytest中,断言是通过 assert 语句来实现的。简单的断言通常用于验证预期值和实际值是否相等,例如&#…

小游戏实战丨基于PyGame的消消乐小游戏

文章目录 写在前面PyGame消消乐注意事项系列文章写在后面 写在前面 本期内容:基于pygame实现喜羊羊与灰太狼版消消乐小游戏 下载地址:https://download.csdn.net/download/m0_68111267/88700193 实验环境 python3.11及以上pycharmpygame 安装pygame…

ENVI 各版本安装指南

ENVI下载链接 https://pan.baidu.com/s/1APpjHHSsrXMaCcJUQGmFBA?pwd0531 1.鼠标右击【ENVI 5.6(64bit)】压缩包(win11及以上系统需先点击“显示更多选项”)选择【解压到 ENVI 5.6(64bit)】。 2.打开解压后的文件夹&#xff0c…

一些想法:关于行人检测与重识别OIMLoss

本文主要是介绍我们录用于 ECCV18 的一个工作:Person Search via A Mask-guided Two-stream CNN Model. 这篇文章着眼于 Person Search 这个任务,即同时考虑行人检测(Pedestrian Detection)与行人重识别(Person Re-ide…

2024PMP考试新考纲-【人员领域】近期典型真题和超详细解析(5)

今天华研荟继续为您分享PMP新考纲下的【人员People领域】近年真题,帮助大家举一反三,一次性通过2024年的PMP考试。 2024年PMP考试新考纲-【人员领域】真题解析21 题:项目经理正在为一个项目工作。该项目由于人员流动,相关方登记册…

Matlab二维绘图

低级绘图命令line 有什么点就点哪里,然后连起来,没什么细节,不光滑,所以基本不会用到。 x0:0.2*pi:2*pi; ysin(x); line(x,y);%画一条sin函数线 line([-5,5],[2,2]);%画一条水平线 line([5,5],[0,2]);%画一条竖线 高级绘图命令…

MySQL之视图外连接、内连接和子查询的使用

一、视图 1.1 含义 虚拟表,和普通表一样使用 1.2 操作 创建视图 create view 视图名 as 修改视图 方式一: create or replace view 视图名 as 【查看视图相关字段】 方式二: alter view 视图名 as 【查看的SQL语句】 查看视图 方式一&…

BUUCTF--actf_2019_babyheap1

这题看名字就知道是堆题,先看保护: 保护除了PIE全开,黑盒测试: 题目提供增删查,没有改。看看IDA中代码逻辑: 逻辑跟我前面做的一题极为相似,就不过多分析。 这是free: 因为题目不能…

基于SSM的驾校考试预约管理设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

求两个数之间的最小公约数

目录 前言 方法:求两个数之间的最小公约数 1.欧几里得算法 2.枚举法 3.公共因子积 4.更相减损术 5.Stein算法 解题:在链表中插入最大公约数 总结 前言 今天刷每日一题:2807. 在链表中插入最大公约数 - 力扣(LeetCode)…

数据库攻防学习之MySQL

MySQL 0x01mysql学习 MySQL 是瑞典的MySQL AB公司开发的一个可用于各种流行操作系统平台的关系数据库系统,它具有客户机/服务器体系结构的分布式数据库管理系统。可以免费使用使用,用的人数很多。 0x02环境搭建 这里演示用,phpstudy搭建的…

SpringBoot 如何 返回页面

背景 RestController ResponseBody Controller Controller中的方法无法返回jsp页面,或者html,配置的视图解析器 InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。 Mapping ResponseBody 也会出现同样的问题。 解…

2024年阿里云优惠活动清单_优惠代金券领取大全

阿里云服务器优惠活动大全包括:云服务器新人特惠、云小站、阿里云免费中心、学生主机优惠、云服务器精选特惠、阿里云领券中心等,活动上阿里云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、轻量应用服务器2核2G3M带宽轻量服务器一年61元,…

Linux系统性能优化:七个实战经验

Linux系统的性能是指操作系统完成任务的有效性、稳定性和响应速度。Linux系统管理员可能经常会遇到系统不稳定、响应速度慢等问题,例如在Linux上搭建了一个web服务,经常出现网页无法打开、打开速度慢等现象,而遇到这些问题,就有人…

Spring Cloud Sleuth+zipkin实现链路追踪

Spring Cloud Sleuth 主要功能就是在分布式系统中提供追踪解决方案,并且兼容支持了 zipkin,你只需要在pom文件中引入相应的依赖即可。 微服务架构上通过业务来划分服务的,通过REST调用,对外暴露的一个接口,可能需要很…

【数据库系统概论】数据库并发控制机制——并发控制的主要技术之封锁(Locking)

系统文章目录 数据库的四个基本概念:数据、数据库、数据库管理系统和数据库系统 数据库系统的三级模式和二级映射 数据库系统外部的体系结构 数据模型 关系数据库中的关系操作 SQL是什么?它有什么特点? 数据定义之基本表的定义/创建、修改和…

【Mars3d】new mars3d.layer.GeoJsonLayer({不规则polygon加载label不在正中间的解决方案

问题: 1.new mars3d.layer.GeoJsonLayer({type: "polygon",在styleOptions里配置label的时候,发现这个 不规则polygon加载的时候,会出现label不在中心位置。 graphicLayer new mars3d.layer.GeoJsonLayer({ name: "全国省界…

网络通信过程的一些基础问题

客户端A在和服务器进行TCP/IP通信时,发送和接收数据使用的是同一个端口吗? 这个问题可以这样来思考:在客户端A与服务器B建立连接时,A需要指定一个端口a向服务器发送数据。当服务器接收到A的报文时,从报文头部解析出A的…