[矩阵的三角分解系列六] Eigen中的三角分解

2023-10-30

矩阵的三角分解是求解线性方程组常用的方法,包括LU分解,LDU分解,杜利特(Doolittle)分解,克劳特(Crout)分解,LLT(乔累斯基Cholesky)分解,LDLT(不带平方根乔累斯基)分解等,以及为了满足分解条件又加入行列变换的LPU分解,PLU分解,LUP分解,LDPU分解等。这里矩阵的三角分解系列教程主要是针对在学习三角分解时候的涉及到的一些细节,包括很多方法的来源和证明等,以及其中用到的一些矩阵操作的基础知识,主要包括:

这个系列后面文章会用到前面文章的理论和技术,所以建议按照顺序查看。

简介

上面介绍的都是三角分解的基础知识,可以了解每种三角分解具体含义,推导的过程以及适用的范围,有了前面的介绍其实自己去实现相应的三角分解方法也变得非常的简单。但在实际使用过程中,很少自己去实现这种复杂的矩阵三角分解,大部分情况下都是调用现成的矩阵运算的算法库。这里介绍比较常用的矩阵运算库Eigen的三角分解的一些使用方法。

安装命令

Eigen库的安装很简单,只有头文件,不包含lib文件。以ubuntu系统apt-get方式安装为例

sudo apt-get install libeigen3-dev

这里安装后会安装在/usr/include/eigen3/目录下,但是在写程序的时候进行#include时候一般都不会加eigen3这个子目录路径,导致经常会找不到头头文件,所以通常安装完还需要执行

sudo ln -s /usr/include/eigen3/Eigen /usr/include/Eigen

这样就可以按照习惯正常使用啦。
如果想使用最新版本一些新功能的话可以采用源码安装,请自行百度安装方式,这里就不做介绍了。

三角分解函数

Eigen库中主要包含下面这些三角分解函数

分解方法 Eigen函数 适用矩阵 分解公式
PartialPivLU Eigen::PartialPivLU 可逆方阵 A = P L U A=PLU A=PLU
FullPivLU Eigen::FullPivLU 任意矩阵 A = P − 1 L U Q − 1 A=P^{-1}LUQ^{-1} A=P1LUQ1
LLT Eigen::LLT 对称正定方阵 A = L L T A=LL^T A=LLT
LDLT Eigen::LDLT 半正定或者半负定矩阵 A = P T L D L T P A=P^TLDL^TP A=PTLDLTP

使用范例

待续~~~

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[矩阵的三角分解系列六] Eigen中的三角分解 的相关文章

  • jmeter-本地压测-数据监控

    一 1 首先我们可以安装一个插件管理工具 Plugins Manager Plugins Manager下载地址 Install JMeter Plugins orgA custom set of plugins for Apache JM
  • Vue系列之入门篇

    前言 目录 一 关于Vue的简介 1 什么是Vue 2 使用Vue框架的好处 3 库和框架的区别 4 MVVM的介绍 5 Vue的入门案例 二 Vue的生命周期 一 关于Vue的简介 1 什么是Vue Vue是一个构建用户界面 UI 的渐进
  • Nginx做反向代理和负载均衡时“X-Forwarded-For”信息头的处理

    一 概述 如今利用nginx做反向代理和负载均衡的实例已经很多了 针对不同的应用场合 还有很多需要注意的地方 本文要说的就是在通过CDN后到达nginx做反向代理和负载均衡时请求头中的 X Forwarded For 项到底发生了什么变化
  • 电脑电池,我的笔记本电脑的电池为什么一直没电

    凡是电池都是有个使用寿命的 笔记本电池的寿命可是按照充放电的次数来计算的 但很多人对这个问题并不十分了解 加上一般笔记本电池的充放电次数起码也在500次左右 以至于很多朋友都认为笔记本电池的寿命也就是两年左右 笔记本电池即使不用 也会有自放
  • pyTorch中tensor运算

    文章目录 PyTorch的简介 PyTorch中主要的包 PyTorch的安装 使用GPU的原因 使数据在GPU上运行 什么使Tensor 张量 一些术语介绍 Tensor的属性介绍 Rank axis shape Rank Axis 轴
  • 离散引擎仿真基础

    1 简答题 Q 解释 游戏对象 GameObjects 和 资源 Assets 的区别与联系 区别 游戏对象 是Unity中的基本对象 游戏中的每个对象都是游戏对象 可以表现为人物 道具 场景等等 它们本身并不能完成很多工作 但它们的主要作
  • LeetCode(力扣)1005. K 次取反后最大化的数组和Python

    LeetCode1005 K 次取反后最大化的数组和 题目链接 代码 题目链接 https leetcode cn problems maximize sum of array after k negations 代码 class Solu
  • GPT-4只是AGI的火花?LLM终将退场,世界模型才是未来

    来源 新智元报道 编辑 润 Lumina 导读 人类距离AGI还有多远 也许大语言模型不是最终答案 一个理解世界的模型才是未来的方向 在人类的认知之中 似乎早已习惯将通用人工智能 AGI 设定为人工智能的终极形态和发展的最终目标 虽然Ope
  • python实现SHA256

    from hashlib import sha256 import hmac def get sign key data sha256加密有2种 hsobj sha256 key encode utf 8 hsobj update data
  • 基于51 手机遥控的蓝牙小车(HC-05)

    文章目录 一 软件 手机下载 蓝牙串口 电脑下载 XCOM串口调试助手 二 硬件 HC 05模块 USB转TTL模块 51小车 1 HC 05 2 USB转TTL模块 三 调试 1 引脚连接 2 进入AT模式 3 手机端串口助手的调试 4
  • C#——ref

    C ref ref 关键字指示按引用传递的值 它用在四种不同的上下文中 1 在方法签名和方法调用中 按引用将参数传递给方法 2 在方法签名中 按引用将值返回给调用方 3 在成员正文中 指示引用返回值是否作为调用方欲修改的引用被存储在本地 或
  • 发邮件向论文作者卑微求代码模板

    记录本人第一封卑微邮件 肯定不是最后一封 主题 关于XXX 随机Petri网 的实现问题 question regarding XXX the implementation of stochastic Petri nets 正文 中文版本
  • 交叉路口红绿灯控制程序linux,西门子PLC编程实例详解|十字路口交通灯自动控制系统...

    原标题 西门子PLC编程实例详解 十字路口交通灯自动控制系统 知识点和关键字 定时器 触点比较指令 传送指令 变址应用 数据块 控制要求 示意图 时序图 工艺流程图 当该路口是红灯时 另外一个路口是通行时间 绿灯亮和黄灯闪亮 当另外一个路口
  • 华为5g测试软件probe_【简讯】华为自研超高速sfs闪存曝光;苹果宣布11月10日举行新品发布会…...

    苹果宣布11月10日举行新品发布会 今天 苹果终于对外宣布 将在美国时间11月10举行新品线上发布会 而本次发布会的主题是 One more thing 至于这次发布会会带来什么新品 目前还不清楚 不过之前库克 Tim Cook 已经曝光

随机推荐