举报投诉联系我们 手机版 热门标签 鳄鱼CMS
您的位置:鳄鱼CMS > 线性代数jk Julia 线性代数

线性代数jk Julia 线性代数

2023-06-23 22:31 Julia教程

线性代数jk Julia 线性代数

线性代数jk Julia 线性代数

线性代数jk

线性代数

矩阵分解

矩阵分解是将一个矩阵分解为数个矩阵的乘积,是线性代数中的一个核心概念。

下面的表格总结了在 Julia 中实现的几种矩阵分解方式。具体的函数可以参考标准库文档的 Linear Algebra章节。

Cholesky Cholesky 分解
CholeskyPivoted 主元 Cholesky 分解
LU LU 分解
LUTridiagonal 三对角矩阵的 LU 因子分解
UmfpackLU 稀疏矩阵的 LU 分解(使用 UMFPACK 计算)
QR QR 分解
QRCompactWY QR 分解的紧凑 WY 形式
QRPivoted 主元 QR 分解
Hessenberg Hessenberg 分解
Eigen 特征分解
SVD 奇异值分解
GeneralizedSVD 广义奇异值分解

特殊矩阵

线性代数中经常碰到带有对称性结构的特殊矩阵,这些矩阵经常和矩阵分解联系到一起。Julia 内置了非常丰富的特殊矩阵类型,可以快速地对特殊矩阵进行特定的操作.

下面的表格总结了 Julia 中特殊的矩阵类型,其中也包含了 LAPACK 中的一些已经优化过的运算。

Hermitian 埃尔米特矩阵
Triangular 上/下三角矩阵
Tridiagonal 三对角矩阵
SymTridiagonal 对称三对角矩
Bidiagonal 上/下双对角矩阵
Diagonal 对角矩阵
UniformScaling 缩放矩阵

基本运算

矩阵类型 + - * 其它已优化的函数
Hermitian XY inv, sqrtm, expm
Triangular XY XY inv, det
SymTridiagonal X X XZ XY eigmax/min
Tridiagonal X X XZ XY
Bidiagonal X X XZ XY
Diagnoal X X XY XY inv, det, logdet, /
UniformScaling X X XYZ XYZ /

图例:

X 已对矩阵-矩阵运算优化
Y 已对矩阵-向量运算优化
Z 已对矩阵-标量运算优化

矩阵分解

矩阵类型 LAPACK eig eigvals eigvecs svd svdvals
Hermitian HE ABC
Triangular TR
SymTridiagonal ST A ABC AD
Tridiagonal GT
Bidiagonal BD A A
Diagonal DI A

图例:

A 已对寻找特征值和/或特征向量优化 例如 eigvals(M)
B 已对寻找 ilth 到 ihth 特征值优化 eigvals(M, il, ih)
C 已对寻找在 [vl, vh] 之间的特征值优化 eigvals(M, vl, vh)
D 已对寻找特征值 x=[x1, x2,...] 所对应的特征向量优化 eigvecs(M, x)

缩放运算

一个 UniformScaling 运算符代表了一个单位算子的标量次数, λ*I。单位算子 I 被定义为一个常量且是 UniformScaling 的一个实例。 这些运算符的尺寸是一般大小,可匹配 +,-,* 等其它二元运算符中的矩阵。对于 A+IA-I 这意味着 A 必须是一个方阵. 使用了单位算子 I 的乘法运算是一个空操作(除非缩放因子为一) ,因此基本没有开销。

阅读全文
以上是鳄鱼CMS为你收集整理的线性代数jk Julia 线性代数全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
  • lua数据库 Lua 数据库访问

    lua数据库 Lua 数据库访问

    2023-03-14 Lua教程

    本文主要为大家介绍 Lua 数据库的操作库:LuaSQL。他是开源的,支持的数据库有:ODBC, ADO, Oracle, MySQL, SQLite 和 PostgreSQ...

  • lua运算符优先级 Lua 运算符

    lua运算符优先级 Lua 运算符

    2023-06-12 Lua教程

    运算符是一个特殊的符号,用于告诉解释器执行特定的数学或逻辑运算。Lua提供了以下几种运算符类型:算术运算符 关系运算符 逻辑...

  • lua 输出table Lua 如何输出树状结构的table?

    lua 输出table Lua 如何输出树状结构的table?

    2023-04-09 Lua教程

    为了让游戏前端数据输出更加条理,做了一个简单树状结构来打印数据。ccmlog.lualocal function __tostring(value, indent, vmap)...

  •  Ruby JSON

    Ruby JSON

    2023-05-10 Ruby教程

    本章节我们将为大家介绍如何使用 Ruby 语言来编码和解码 JSON 对象。 环境配置 在使用 Ruby 编码或解码 JSON 数据前,我们需要先...

  • r语言字符串处理 R语言 字符串

    r语言字符串处理 R语言 字符串

    2023-04-17 R语言教程

    在R语言中的单引号或双引号对中写入的任何值都被视为字符串。 R语言存储的每个字符串都在双引号内,即使是使用单引号创建的依旧...

© 2024 鳄鱼CMS eyucms.com 版权所有 联系我们