矩阵运算模块 - 使用 VB.NET 基础数学函数实现线性代数运算 包含:矩阵乘法、转置、求逆、行列式、特征值分解等
MatrixOps
01 Syntax
Microsoft.VisualBasic.Math.LinearAlgebra.Matrix.MatrixOps
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| Multiply | 1 | 矩阵乘法 C = A × B |
| Transpose | 1 | 矩阵转置 |
| Add | 1 | 矩阵加法 |
| Subtract | 1 | 矩阵减法 |
| Scale | 1 | 标量乘矩阵 |
| MultiplyVec | 1 | 矩阵向量乘法 y = A × x |
| Inverse | 1 | 矩阵求逆 - 使用 Gauss-Jordan 消元法带部分主元选取 |
| Determinant | 1 | 计算行列式(递归展开法,适用于小矩阵) |
| JacobiEigen | 1 | 对称矩阵特征值分解 - 使用 Jacobi 旋转法 返回 (eigenvalues, eigenvectors),eigenvectors 的列是对应的特征向量 |
| Trace | 1 | 矩阵的迹(对角元素之和) |
| PrintMatrix | 1 | 打印矩阵(调试用) |
03 Members
Multiply(
Double[0:,0:], Double[0:,0:])矩阵乘法 C = A × B
Transpose(
Double[0:,0:])矩阵转置
Add(
Double[0:,0:], Double[0:,0:])矩阵加法
Subtract(
Double[0:,0:], Double[0:,0:])矩阵减法
Scale(
Double[0:,0:], Double)标量乘矩阵
MultiplyVec(
Double[0:,0:], Double())矩阵向量乘法 y = A × x
Inverse(
Double[0:,0:], Boolean, Boolean)矩阵求逆 - 使用 Gauss-Jordan 消元法带部分主元选取
Parameters
| Name | Type | Description |
|---|---|---|
throwSingularity | Double[0:,0:] | this function will returns nothing if this parameter value set to false |
Determinant(
Double[0:,0:])计算行列式(递归展开法,适用于小矩阵)
JacobiEigen(
Double[0:,0:])对称矩阵特征值分解 - 使用 Jacobi 旋转法 返回 (eigenvalues, eigenvectors),eigenvectors 的列是对应的特征向量
Trace(
Double[0:,0:])矩阵的迹(对角元素之和)
PrintMatrix(
Double[0:,0:], String)打印矩阵(调试用)