Octave 编程教程/线性代数
外观
d = det(A)
计算矩阵 A 的 行列式。lambda = eig(A)
将A
的 特征值 返回到向量lambda
中,并且[V, lambda] = eig(A)
也将 特征向量 返回到V
中,但lambda
现在是一个矩阵,其对角线包含特征值。这种关系在 (舍入误差内)A = V*lambda*inv(V)
中成立。inv(A)
计算非奇异矩阵 A 的逆。请注意,计算逆通常是 “不必要” 的。请参见接下来的两个运算符作为示例。请注意,在理论上A*inv(A)
应该返回单位矩阵,但在实践中,可能存在一些舍入误差,因此结果可能不完全准确。A / B
计算 X 使得 。这称为右除,在不形成 B 的逆的情况下完成。A \ B
计算 X 使得 。这称为左除,在不形成 A 的逆的情况下完成。norm(A, p)
计算矩阵 (或向量) A 的 p 范数。第二个参数是可选的,默认值为 。rank(A)
计算矩阵的 (数值) 秩。trace(A)
计算 A 的 迹 (对角线元素的总和)。expm(A)
计算方阵的矩阵指数。这被定义为
下面是一些更高级的线性代数函数。使用 help
来了解更多关于它们的知识。
balance
(特征值平衡),cond
(条件数),dmult
(有效计算 diag(x) * A),dot
(点积),givens
(Givens 旋转),kron
(克罗内克积),null
(零空间的正交规范基),orth
(值域的正交规范基),pinv
(伪逆),syl
(求解 Sylvester 方程)。
R = chol(A)
计算对称正定矩阵 A 的 Cholesky 分解,即上三角矩阵 R 使得 。[L, U] = lu(A)
计算 A 的 LU 分解,即 L 为下三角矩阵,U 为上三角矩阵,并且 。[Q, R] = qr(A)
计算 A 的 QR 分解,即 Q 为正交矩阵,R 为上三角矩阵,并且 。
下面是一些更多可用的分解。使用 help
来了解更多关于它们的知识。
qz
(广义特征值问题: QZ 分解),qzhess
(Hessenberg-三角分解),schur
(Schur 分解),svd
(奇异值分解),housh
(Householder 反射),krylov
(块 Krylov 子空间的正交基)。