对于创建置换矩阵,Octave没有引入新的函数,而是覆盖了现有的语法:通过用置换向量索引单位矩阵,可以方便地创建置换矩阵。也就是说,如果q是长度的置换向量n,表达式
P = eye (n) (:, q);
将创建一个置换矩阵-一个特殊的矩阵对象。
eye (n) (q, :)
也将起作用(并创建一个行排列矩阵),以及
eye (n) (q1, q2).
例如
eye (4) ([1,3,2,4],:) ⇒ Permutation Matrix 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 eye (4) (:,[1,3,2,4]) ⇒ Permutation Matrix 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1
在数学上,单位矩阵既是对角矩阵又是置换矩阵,eye (n)
返回一个对角矩阵,因为矩阵只能有一个类。您可以将此对角矩阵转换为置换矩阵,方法是通过单位置换对其进行索引,如下所示。这是单位矩阵的一个特殊性质;索引其他对角化矩阵通常返回完整矩阵。
eye (3) ⇒ Diagonal Matrix 1 0 0 0 1 0 0 0 1 eye(3)(1:3,:) ⇒ Permutation Matrix 1 0 0 0 1 0 0 0 1
其他一些内置函数也可以返回置换矩阵。示例包括inv或lu.
版权所有 © 2024-2025 Octave中文网
ICP备案/许可证号:黑ICP备2024030411号-2