原文中比较了 MATLAB 内置/包;NAG lib;SciPy;Julia;R 中的矩阵函数实现情况。
http://eprints.maths.manchester.ac.uk/2754/
联动 issue
报告内容
按相关性重新分组、排序。
开头的数字为章节编号.
标题加粗代表进行对比
-
1 简介报告的目的及一点点矩阵函数的历史。
(万物开端:FORTRAN 版 MATLAB) -
2 矩阵函数的广泛应用
-
3 常见的矩阵函数
- 指数函数: e^{A}
- 对数函数: \log A
- 平方根函数: A^{1/2}
- 实矩阵乘方: A^{t}
- 三角函数: \cos A, \sin A
- 反三角函数: \text{acos}[\text{h}](A), \text{acos}[\text{h}](A)
- 通用矩阵函数(Schur-Parlett 算法): f(A)
- 估计矩阵条件数: \text{cond}(f, A)
- 指数函数×向量: e^{A}b
- 矩阵指数的 Fréchet 导数: L_{\exp}
- 矩阵对数的 Fréchet 导数: L_{\log}
- 矩阵乘方的 Fréchet 导数: L_{x^t}
-
Fortran
- 19 NAG Library: Fortran, C, MATLAB, Python
- 20 ϕ Functions in Fortran 95
- 25 SLICOT (Fortran 77)
-
MATLAB
- 4 MATLAB 内置实现
- 5 Symbolic Math Toolbox
- 6 Advanpix Multiprecision Computing Toolbox
- 7 Matrix Function Toolbox
- 8 其他 MATLAB 矩阵函数
- 11 Expokit:计算 e^{A}, e^{A}b
- 12 EXPINT:ODE 的指数积分器
-
类 MATLAB
- 13 GNU Octave
- 24 Scilab
-
数学软件
- 17 Maple
- 18 Mathematica
-
16 Julia
-
21 Python
- SciPy
- SymPy
- Other Python Functions
- 26 Tensorflow
-
22 R
- Expm
- pbdDMAT
- Matrix
-
C/C++
- 9 Armadillo
- 10 Eigen
- 14 GNU Scientific Library
- 27 SLEPc (C)
-
23 Rust
-
15 Java
各语言/库矩阵函数实现情况
MATLAB build-in |
MATLAB 3rd |
NAG Lib | SciPy | Julia | R | |
---|---|---|---|---|---|---|
e^{A} | ||||||
\log A | ||||||
\cos A, \sin A | ||||||
\text{acos}(\text{h})(A), \text{acos}(\text{h})(A) | ||||||
A^{1/2} | ||||||
A^{t} | ||||||
f(A) | - | |||||
Est. of \text{cond}(f, A) | ||||||
e^{A}b | ||||||
L_{\exp} | ||||||
L_{\log} | ||||||
L_{x^t} |