(done) 矩阵的对角化,以及是否可对角化的判断、还有对角化的本质。相似对角化计算过程

2024-02-23 22:44

本文主要是介绍(done) 矩阵的对角化,以及是否可对角化的判断、还有对角化的本质。相似对角化计算过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

相似对角化 和 对角化 很大程度上是一回事
甚至判断两个矩阵的相似性,也跟对角化有很大关系

参考视频1:https://www.bilibili.com/video/BV1PA411T7b5/?spm_id_from=333.788&vd_source=7a1a0bc74158c6993c7355c5490fc600

参考视频2:https://www.bilibili.com/video/BV14T4y127jf/?spm_id_from=333.337.search-card.all.click&vd_source=7a1a0bc74158c6993c7355c5490fc600

参考视频3:https://www.bilibili.com/video/BV1Js4y1372V/?spm_id_from=333.337.search-card.all.click&vd_source=7a1a0bc74158c6993c7355c5490fc600


如下图的矩阵其实可以看成一个 “基向量” 变换,它把 (1, 0) 变成 (2, 1),把 (0, 1) 变成 (1, 2)
在这里插入图片描述

同时,我们把自然基下的矢量,使用上述矩阵进行变换时,大部分矢量的方向会被改变,但有部分矢量的方向是不会被改变的,如下图,这类矢量我们就称为特征向量
在这里插入图片描述

平面内还有另一个特征向量 (它总是保持不变吗?还是说只是因为特征值刚好是 1?与原特征向量垂直是必须的吗?)
这两个特征向量,似乎在自然基和变换基下,都是垂直的?
在这里插入图片描述

此时,可以把这两个特征向量作为一组新的基,那么,原来的变换矩阵在这个新的基下的作用就只是把矢量进行伸缩。于是,原来的变换矩阵在这个新的基下的作用就可以使用一个 “对角阵” 来表示
在这里插入图片描述

因此,这个 对角阵 和 原来的变换矩阵 是相似的。
X 和 X^(-1) 就是基变换矩阵,它们由 自然基 下的特征向量构成
一个更好的理解是,原来的变换矩阵可以拆分成:
1.先把自然基下的矢量映射到 “特征向量构成的一组基” 上
2.在 “特征向量构成的一组基” 上对矢量进行变换 (实际上就是伸缩)
3.再把变换后的矢量映射回 自然基 上
在这里插入图片描述

当我们把 基变换矩阵 的顺序改变时,对角矩阵的顺序也需要变换
在这里插入图片描述

此时就可以明白,一个矩阵能否相似对角化的充要条件是 “它的特征向量能否构成一组基”
在这里插入图片描述
构成一组基的条件:即这组特征向量是线性无关的

更精确的说法:矩阵A 有 n 个线性无关的特征向量
在这里插入图片描述

以下是一个小的引理
若有 n 个不同的特征值 =====> 则 A 有 n 个线性无关的特征向量 (不同特征值对应的特征向量线性无关)
NOTE: 反过来不一定成立哦!
在这里插入图片描述

如下图,是一个例子:
若三阶矩阵有三个特征值,那么它就可对角化,因为它拥有三个线性无关的特征向量
若只有 1, 2, 2,那就要重点关注 (lamda = 2) 所对应的特征向量,若它们线性无关,则可对角化;否则不行
在这里插入图片描述


以下是一个求特征值、特征向量,从而把矩阵相似对角化的例子:
在这里插入图片描述


当 lamda1 = lamda2 = 2 时,我们发现求出的矩阵只有一个非零行,那么也就是说它的 “自由未知量” 是 2。
这其实暗含了 “我们能够得到两个线性无关非零解” 的意思,也就说这个矩阵是可以相似对角化的
在这里插入图片描述

这篇关于(done) 矩阵的对角化,以及是否可对角化的判断、还有对角化的本质。相似对角化计算过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/740164

相关文章

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了

Python实现精确小数计算的完全指南

《Python实现精确小数计算的完全指南》在金融计算、科学实验和工程领域,浮点数精度问题一直是开发者面临的重大挑战,本文将深入解析Python精确小数计算技术体系,感兴趣的小伙伴可以了解一下... 目录引言:小数精度问题的核心挑战一、浮点数精度问题分析1.1 浮点数精度陷阱1.2 浮点数误差来源二、基础解决

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法

《JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法》:本文主要介绍JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法,每种方法结合实例代码给大家介绍的非常... 目录引言:为什么"相等"判断如此重要?方法1:使用some()+includes()(适合小数组)方法2

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

Java Kafka消费者实现过程

《JavaKafka消费者实现过程》Kafka消费者通过KafkaConsumer类实现,核心机制包括偏移量管理、消费者组协调、批量拉取消息及多线程处理,手动提交offset确保数据可靠性,自动提交... 目录基础KafkaConsumer类分析关键代码与核心算法2.1 订阅与分区分配2.2 拉取消息2.3

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Python文本相似度计算的方法大全

《Python文本相似度计算的方法大全》文本相似度是指两个文本在内容、结构或语义上的相近程度,通常用0到1之间的数值表示,0表示完全不同,1表示完全相同,本文将深入解析多种文本相似度计算方法,帮助您选... 目录前言什么是文本相似度?1. Levenshtein 距离(编辑距离)核心公式实现示例2. Jac