在 Octave 和 Scilab 中使用函数 fix() 时,我遇到了一些奇怪的结果。以下是 Scilab 控制台的输入和输出,但在 Octave 中也会发生完全相同的事情。
我从以下矩阵开始:
A=[1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0;
0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0;
0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0;
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1;
1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0;
0,1,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0;
0,0,1,0,0,1,0,0,0,1,0,0,0,1,0,0,1,0,0;
0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,1,0;
0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,1;
0,0,1,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0;
0,1,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0;
1,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,1;
0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,0]
我想把它带到减少的行梯队形式:
-->rref(A)
ans =
1. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 0. 0. 1. 2. 1. 0. 1. 1.
0. 1. 0. 0. 0. 0. 0. 0. 0. -1. 0. 0. 0. -1. -1. 0. 0. 0. 0.
0. 0. 1. 0. 0. 0. 0. 0. 0. 0. -1. 0. 0. 0. -1. -1. 0. -1. -1.
0. 0. 0. 1. 0. 0. 0. 0. 0. -1. -1. 0. 0. 0. -1. 0. 0. -1.388D-16 0.
0. 0. 0. 0. 1. 0. 0. 0. 0. 0. -1. 0. 0. -1. -1. -1. 0. -1. 0.
0. 0. 0. 0. 0. 1. 0. 0. 0. 1. 1. 0. 0. 1. 1. 1. 0. 0. 0.
0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 1. 0.
0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. -1. -1. -1. 0. -1. -1.
0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 0. 0. 1. 1. 0. 0. 1. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 1.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 1. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
到目前为止一切都很好,我猜,但是当我现在在最后获得的矩阵上使用 fix() 来获取整数条目时,我在 (6,10) 和 (6,11) 处得到零,这是我预期的:
-->fix(rref(A))
ans =
1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 1. 2. 1. 0. 1. 1.
0. 1. 0. 0. 0. 0. 0. 0. 0. -1. 0. 0. 0. -1. -1. 0. 0. 0. 0.
0. 0. 1. 0. 0. 0. 0. 0. 0. 0. -1. 0. 0. 0. -1. -1. 0. -1. -1.
0. 0. 0. 1. 0. 0. 0. 0. 0. -1. -1. 0. 0. 0. -1. 0. 0. 0. 0.
0. 0. 0. 0. 1. 0. 0. 0. 0. 0. -1. 0. 0. -1. -1. -1. 0. -1. 0.
0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 0. 0. 0.
0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 1. 0.
0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. -1. -1. -1. 0. 0. -1.
0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 1. 1. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0. 1. 0. 0. 1.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 1. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
那里发生什么了?