Correct Schur decomposition for 2x2 matrices

Due to rounding and possible loss of precision the lower left element of the 2x2 matrix
may be different from zero.
This commit is contained in:
daingun 2019-11-01 22:12:59 +01:00 committed by Sébastien Crozet
parent 549d0dd2dd
commit 1103d49b80

View File

@ -413,6 +413,7 @@ where
let inv_rot = rot.inverse(); let inv_rot = rot.inverse();
inv_rot.rotate(&mut m); inv_rot.rotate(&mut m);
rot.rotate_rows(&mut m); rot.rotate_rows(&mut m);
m[(1, 0)] = N::zero();
if compute_q { if compute_q {
// XXX: we have to build the matrix manually because // XXX: we have to build the matrix manually because