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